1.2 扩展库
视频讲解:光盘\TM\lx\1\02 扩展库.mp4
PHP 5一直在升级更新,总体上围绕着性能、安全与新特性,不断为开发者提供新的动力。PHP提供了一些扩展库,这些扩展库使PHP如虎添翼,更加灵活方便,如网上社区、BBS论坛等,如果没有扩展库的支持,它们都可能无法使用,因此在安装PHP时要根据以后的用途选择安装。
PHP 5的扩展库包括标准库SPL(Standard PHP Library)和外部扩展库PECL(PHP Extension Community Library)。标准库即被编译到PHP内部的库。历史上标准库指的是Standard扩展(默认即编译进PHP),但PHP 5出现后,标准库实际上成了代名词。PHP 5新增内置标准扩展库:XML扩展库——DOM、SimpleXML以及SQLite等,而类似MySQL、MySQLi、Overload、GD2等库则被放在PECL外部扩展库中,需要时在php.ini配置文件中选择加载。
在Windows下加载扩展库,是通过修改php.ini文件来完成的。用户也可以在脚本中通过使用dl()函数来动态加载。PHP扩展库的DLL文件都具有“php_”前缀。
很多扩展库都内置于Windows版本的PHP中,要加载这些扩展库不需要额外的DLL文件和extension配置指令。Windows下的PHP扩展库列表列出了需要或曾经需要额外PHP DLL文件的扩展库。
在编辑php.ini文件时,应注意以下几点:
需要修改extension_dir设置以指向用户放置扩展库的目录或者放置php_*.dll文件的位置。例如:
extension_dir = C:\php\extensions
要在php.ini文件中启用某扩展库,需要去掉extension=php_*.dll前的注释符号,即将需要加载的扩展库前的“; ”删除。例如启用Bzip2扩展库,需要将下面这行代码:
;extension=php_bz2.dll
改成:
extension=php_bz2.dll
某些DLL没有绑定在PHP发行包中。PECL中有日益增加、数目巨大的PHP扩展库,这些扩展库需要单独下载。
注意
如果运行服务器模块版本的PHP,在修改了php.ini之后应注意重新启动Web服务器,使改动生效。
PHP内置扩展库列表如表1.1所示。
表1.1 PHP内置扩展库列表
续表
续表
注:<=表示该版本及以前版本,>=表示该版本及以后版本。
注意
PHP 5.3不再支持php_mssql.dll扩展库,即使使用PHP 5.2中的php_mssql.dll也无法使用。想要使用PHP 5.3连接SQL Server数据库,可以使用微软专门为PHP推出的一个SQL Server的扩展(Windows版本)。