我有几个独立的网站,它们位于不同的目录中。对于它们共有的包含,我将它放在其余部分所在的根目录中。
user@hostname:/var/www$ ls
website_1 website_2 website_3 common_files
我想包含一个 Zend 包,所以我有我的包含路径
ini_set("include_path", get_include_path() . ":/var/www/common_files/Zend");
require_once("Mail.php");
Mail.php
加载还可以,但是在某处有这条线
require_once 'Zend/Mail/Transport/Abstract.php';
这给出了这个错误
Warning: require_once(Zend/Mail/Transport/Abstract.php): failed to open stream: No such file or directory in var/www/common_files/Zend/Mail.php on line 26
所以 php 不会递归地进入包含路径的目录结构。我是否必须将 Zend 移动到每个网站目录中,拼出每个包含的路径,还是什么?
BTW 摘要确实存在:
user@host:/var/www/common_files/Zend$ tree -d
...
`-- Mail/Transport
|-- Mail/Transport/Abstract.php
|-- Mail/Transport/Exception.php
|-- Mail/Transport/Sendmail.php
`-- Mail/Transport/Smtp.php
9 directories, 32 files