我正在尝试安装显然使用Zend Framework编写的TheStudio应用程序。我的测试服务器正在运行Ubuntu 12.04,我的应用程序目录存储在/ home
中我的错误日志正在陈述
PHP Fatal error: require_once(): Failed opening required 'usr/share/php/libzend-frameworkphp/Zend/Loader/Autoloader.php'
(include_path='.:../library:../application/db:../application/models:../application/utils:../application/views/helpers:../application') in /home/application/config/config.php on line 22
config.php第22行说明:
require_once '/usr/share/php/libzend-framework-php/Zend/Loader/Autoloader.php';
包含路径如下:
define('PS', PATH_SEPARATOR);
define('DS', DIRECTORY_SEPARATOR);
define('ROOT_DIR', dirname('home'));
// Modify include path
$paths = '.' . PS . '..' . DS . 'library'
. PS . '..' . DS . 'application' . DS . 'db'
. PS . '..' . DS . 'application' . DS . 'models'
. PS . '..' . DS . 'application' . DS . 'utils'
. PS . '..' . DS . 'application' . DS . 'views' . DS . 'helpers'
. PS . '..' . DS . 'application';
ini_set("include_path", $paths);
如何修改路径语句以定位位于/ home目录中的文件?是否还需要进行其他调整才能解决上述错误?
答案 0 :(得分:0)
/usr/share/php/libzend-frameworkphp
是Zend Framework Ubuntu软件包的默认安装路径,所以看起来这个应用程序假定它会存在。 sudo apt-get install zend-framework
应该解决这个问题。
我会说在require_once
调用中包含完整路径是不好的做法,并且在第三个代码示例中定义了太多包含路径(我假设它来自应用程序) ?)。