几个点…
PHP没有本机的“导入”基础设施,如python,java或.net. PHP可以使用几种方法.
>将它们编译成PHP二进制文件.这是最先进的方式,除非您有非常特殊的需求,否则通常不是可取的.
>将它们作为PHP模块安装在服务器上,并将它们包含在PHP.ini中.从PHP程序员的角度来看,这些扩展是PHP的一部分 – 始终可用.它只是更容易添加和删除它们,而无需重建PHP本身.
>在服务器上安装PHP代码,并将()包含到PHP脚本中.
>将库的副本保存到项目中,并将其包含到PHP脚本中.
–
在基本层面上,代码是解释器的一部分(静态或动态),或者是将include()编入项目的简单的旧PHP代码.
为了您的目的,我只能建议您坚持使用行业标准的PHP发行版(选择一个好的linux操作系统,并使用它的PHP).然后,几乎所有在解释器级别需要的图书馆都可以作为附加包使用,而且这些图书馆的复杂性是每天都可以使用的.
在RedHat / Centos上,您可以运行:
yum install php php-memcached php-gd php-pecl
–
对于您可能想要使用的所有其他类型的库,最有可能最好采用一个好的PHP框架来处理所有这些.
一些例子是:
> Zend框架
> CakePHP
> Codeigniter
> http://www.phpframeworks.com/
>等等
(不按任何顺序,只是想到的)
如果您采用使用RPM或类似方式的标准方法来管理在PHP和扩展的方面编译,那么一个很好的实体框架将负责包含您需要的所有其他PHP库代码.
最终的结果是,您专注于交付产品,而不是您所需要学习和发明的所有基础设施.
–
php.ini被解析并在PHP启动时运行(每次命令行,每个服务器在apache中启动一次).它定义了很多设置,包括很多模块,配置这些模块等…
您可以使用PHP中的ini_set()函数实际覆盖php.ini中的某些设置.但是,这仅对某些设置有效.其他的需要在您的脚本启动之前进行设置.
在apache下运行时,您可以添加.htaccess和< VirtualHost>指令完全覆盖该目录/虚拟主机的PHP.ini.
(请更正我的语法并删除此笔记如果错误)
ServerName www.example.com
DocumentRoot /home/joe/site/docroot
php_value include_path "/home/joe/site/php-code"
–
为了回应您关于您自己的图书馆的第6个问题和最佳的打包方式,我建议您首先评估图书馆的需求.如果你真的要做某事,那就找出人们最常用的方式.如果它是一个简单的库,那么一个.php文件和一个漂亮的网站就足够了.
– 也许有点漫游,但我希望这能指向正确的方向.