Zend Loader问题

时间:2011-03-25 22:31:38

标签: php zend-framework

这个问题可能会被要求提供时间。但我无法使其发挥作用。 有我的目录列表:

--main/
---- Zend/
---- dir1/
---- dir2/

这是我的设置包含路径配置:

set_include_path(PATH_SEPARATOR
            . dirname(__FILE__) . DIRECTORY_SEPARATOR . 'Zend' . PATH_SEPARATOR
            . get_include_path());

我也尝试将所有目录分别添加到路径中。 但是apache坚持要提出这些错误:

  

警告:require_once(Zend / Loader.php):无法打开流:C:\ Program Files \ Apache Software Foundation \ Apache2.2 \ htdocs \ main \ Zend \ Translate.php中没有此类文件或目录25致命错误:require_once():无法打开所需的'Zend / Loader.php'(include_path ='; C:\ Program Files \ Apache Software Foundation \ Apache2.2 \ htdocs \ main \ Zend;。; C:\ php \第25行的C:\ Program Files \ Apache Software Foundation \ Apache2.2 \ htdocs \ main \ Zend \ Translate.php

这些行中的dir1中的php文件抛出了这个:

include_once '../Zend/Locale.php';
include_once '../Zend/Translate.php'; //this is the line

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

因为你有一个相对于当前文件包含路径的两个Zend类中的一个,它正在运行:

require_once 'Zend/Loader.php';

正在解析为htdocs \ main \ Zend \ Zend \ Loader.php

要修复,请删除DIRECTORY_SEPARATOR。 'Zend',那么你的include_once也可以

require_once 'Zend/Locale.php';
require_once 'Zend/Translate.php';

注意我改为require_once,因为include_once将继续执行脚本,即使包含失败也是如此。