在php中加载Zend Recaptcha时出错

在php中加载Zend Recaptcha时出错,php,zend-framework,Php,Zend Framework,我的应用程序在查找Zend库时遇到问题。我将ZendFramework放在一个单独的文件夹中(除了public_html),因此我使用autoloader调用Zend类,如下所示: $libreria='/home/conaprel/ZendFramework/library/'; set_include_path(get_include_path().PATH_SEPARATOR.$libreria); require_once('Zend/Loader/Autoloader.php'); Z

我的应用程序在查找Zend库时遇到问题。我将ZendFramework放在一个单独的文件夹中(除了public_html),因此我使用autoloader调用Zend类,如下所示:

$libreria='/home/conaprel/ZendFramework/library/';
set_include_path(get_include_path().PATH_SEPARATOR.$libreria);
require_once('Zend/Loader/Autoloader.php');
Zend_Loader_Autoloader::getInstance();
网站的文件夹结构如第一行代码所示。每当我需要可用的Zend类时,我都会包含这个文件。当我在本地服务器上运行它时,它工作正常,但现在它给了我一个错误:

Warning: include_once() [function.include-once]: Unable to access Zend/Service  /Recaptcha.php in /home/conaprel/ZendFramework/library/Zend/Loader.php on line 146

Warning: include_once(Zend/Service/Recaptcha.php) [function.include-once]: failed to open stream: No such file or directory in /home/conaprel/ZendFramework/library/Zend/Loader.php on line 146

Warning: include_once() [function.include]: Failed opening 'Zend/Service/Recaptcha.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php:/home/conaprel/ZendFramework/library') in /home/conaprel/ZendFramework/library/Zend/Loader.php on line 146

我能做什么?我已经检查了Recaptcha.php是否在Services文件夹中,它是否在那里。

这看起来像是区分大小写的问题。正确的文件名是
Zend/Service/ReCaptcha.php
(请注意大写字母“C”),但您收到的错误表明它试图包含
Zend/Service/ReCaptcha.php
(小写字母“C”)。我猜您在本地使用不区分大小写的文件系统,在生产中使用区分大小写的文件系统

只需纠正您尝试实例化的类的情况,它应该可以工作:

$captacha = new Zend_Service_ReCaptcha();

看起来你在一个不同的地方,而PHP在
include\u once
上的位置看起来不同。可能是正确的重复,那么我应该做
$libreria='''u DIR.'/home/conaprel/ZendFramework/library';设置包含路径(get包含路径().path分隔符$libreria);require_once('Zend/Loader/Autoloader.php');Zend_Loader_Autoloader::getInstance()但是它不工作。也许是因为我引用的是一个文件夹而不是一个文件,但是我能做什么呢?我正在尝试设置一个路径,以便文件夹应该包含在字符串中,而不是
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
之前:
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu。Zend手册还告诉您如何设置自动加载器。非常好的解释了IIRC。非常感谢。我对此非常着迷,因为我整个上午都在上传一个非常大的站点,我想知道我错过了阅读Zend站点中Autoloader的使用,找到了关于使用名称空间进行类和注册自定义资源的大部分解释,在你指出这个(?愚蠢?)错误之前,这些都是无用的