Php 如何为基于相同框架的多个项目使用公共目录(库)?
我已经开始学习Zend框架,现在我已经创建了几乎6个用于实践的项目,在每个项目的库中,我都复制了Zend文件夹。是否有一种方法可以将此库文件夹或库/Zend文件夹放在公共位置,并通过其他方式将其包括在内,从而节省磁盘空间 您可以将其放置在任何位置,并将其添加到php.ini中的include路径, 或者在运行时,在开始调用引导程序之前,将其添加到index.php中的include路径:Php 如何为基于相同框架的多个项目使用公共目录(库)?,php,Php,我已经开始学习Zend框架,现在我已经创建了几乎6个用于实践的项目,在每个项目的库中,我都复制了Zend文件夹。是否有一种方法可以将此库文件夹或库/Zend文件夹放在公共位置,并通过其他方式将其包括在内,从而节省磁盘空间 您可以将其放置在任何位置,并将其添加到php.ini中的include路径, 或者在运行时,在开始调用引导程序之前,将其添加到index.php中的include路径: $path = 'path_to_zend'; set_include_path(get_include_p
$path = 'path_to_zend';
set_include_path(get_include_path() . PATH_SEPARATOR . $path);
这样,如果部署到不允许修改php.ini的主机,就不必依赖修改php.ini。如果使用Linux,可以使用软链接 对于Windows,您可以通过分配一个专用于第三方库的文件夹并将该目录添加到PHP的
include_path
中来获得。这可以在php.ini
文件中找到
我的风格是有一个D:/PHP_Libraries
文件夹,将Zend Framework放在那里(以及其他像Doctrine这样的库),我的PHP.ini
如下:
include_path= ".;c:\php\includes;d:\PHP_Libraries"
对于Linux发行版也可以这样做。这也可以在Mac电脑上完成。那么问题出在哪里?创建一个文件夹,将所有库放在其中,然后(可选)通过
set\u include\u path()
将其添加到include路径。我不确定这样做可以节省多少磁盘空间,但我很确定这并不重要。主要的一点不是节省空间,而是更易于维护。只需要在一个地方更新库。在我看来,如果您必须像zend那样对库进行更改,那么最好将库放在它自己的项目中,因为,谁知道在其他项目中会出现什么问题。