我正在尝试安装显然是使用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);
我应该如何修改 path 语句以针对位于/home 目录中的文件? 是否应该进行其他调整以解决上述错误?
/usr/share/php/libzend-frameworkphp
是Zend Framework Ubuntu软件包的默认安装路径,所以这个应用程序似乎假设会在那里。 sudo apt-get install zend-framework
应该解决这个问题。
我会说在require_once
调用中包含完整路径是一种不好的做法,并且在第三个代码示例中定义了太多包含路径(我假设来自应用程序?