在PHP中设置绝对include_path

时间:2012-08-29 17:10:39

标签: php include

我有许多具有include_once的课程(经理和数据)。似乎当我将数据类包含到管理器中时,它们可以很好地协同工作......但是当我在视图中包含管理器类来获取数据时,它就会被破坏。我假设由于视图实际上将管理添加到自身,这使得数据的路径不正确,因为视图是来自根/adoptions/apps/add/的3个目录,而管理器和数据类是来自根的4个目录。这是对的吗?

由于我是PHP的新手,我注意到/比我的网络根目录更进一步。我在Windows机器上运行apache,而htdoc的路径实际上是

c:/Program Files(x86)/Zend/Apache2/htdocs/mywebsite 

(如果这有帮助的话)。我想让我所有的包括像

 include_once('/com/mywebsite/data/people/People.class.php';

谢谢!

1 个答案:

答案 0 :(得分:2)

您需要在安装的include_path文件中设置php.ini属性。如果您愿意,清除现有条目,或添加分号,然后c:/Program Files(x86)/Zend/Apache2/htdocs

然后所有路径都是相对的,所以你可以去include("/mywebsite/data/people/People.class.php");

或者你可以在.htaccess文件中执行此操作:

php_value include_path ".;c:/Program Files(x86)/Zend/Apache2/htdocs"

或你自己的php中的这两种方法之一:

ini_set("include_path",".;c:/Program Files(x86)/Zend/Apache2/htdocs");

set_include_path(".;c:/Program Files(x86)/Zend/Apache2/htdocs");