前言
今天是最后一篇,通过phpinfo() 这个函数的输出,将PHP的常用扩展库都讲了一遍。学习一门新的语言大概分成这么几个阶段:语法阶段、面向对象阶段、扩展库阶段。
本文由1024编程实验室原创,请勿转载。
openssl
首先我们要知道 openssl 主要应用于HTTPS服务上,并非PHP特有。在PHP中基于 openssl 实现了该扩展。
如果你想用curl去读取https网页的话,那么这个库是必要的,使用composer的时候也会要求你包含这个库。
记得给openssl配置证书,也就是 选项,证书可以从 https://curl.haxx.se/docs/caextract.html 下载。
pcntl
多进程管理,windows上不可用。
pcre
正则表达式库,我们常用的 preg_xxx 系列函数都是来自这个扩展库的。
PDO
和 mysqli 起到一样的作用,都是用于连接和读写数据库的。区别在于 PDO 是一个轻量级的一致性接口,不仅仅支持MYSQL,还可以支持其他数据库(需要安装对应扩展)。
所谓一致性接口指的是:切换数据库的时候,SQL语句不用重写。
pdo_xxx
所有以 pdo_ 开头的扩展,都是PDO支持的数据库。比如 、 分别对应 mysql数据库和sqlite数据库。
phar
该扩展可以将整个PHP项目打包到一个后缀为 到文件。我们常用的 composer 的源文件就是 ,这样做的目的是为了更便捷的分发和安装。
posix
包含了一系列的操作系统操作接口,不过 windows 上不可用。
实现了 IEEE 1003.1 的标准,具体可参考:http://standards.ieee.org/findstds/standard/1003.1-2008.html,在当年操作系统花样百出的时候,为了防止各自为战,于是搞出了这个标准。
该扩展提供了很多和操作系统互动的函数,包括 操作系统的基本信息、进程的管理等。
Reflection
反射库,提供了对类、接口、函数、方法和扩展进行反向工程的能力。
如果你想知道一个类中有多少个方法、每个方法有多少个参数等等诸如此类的信息,可以通过此扩展实现。并且,你还可以借助反射去执行类方法。
之所以在框架中我们要编写正确的命名空间,就是要提供给反射API用。
session
没什么好说的,就是session的相关函数。
SimpleXML
用来读写 XML 的。
soap
soap 是一个接口规范,在 restful api 流行之前,多数都是通过 soap 的规范去做接口的。
sockets
实现 socket 通讯的接口,是两个程序之间进行网络通讯的一个接口协议,是对 TCP/IP 的封装,可以做很多事,比如代替 curl。
SPL
提供了很多用于解决常见问题的接口库,这是一个综合库,里边包含了不少东西。
包括新的数据结构、各种迭代器、接口、异常处理、文件处理等等。
sqlite3
用于连接和操作sqlite3数据库的扩展库。
swoole
这是需要额外安装配置的库,可快速建立基于php语言的 server/client 通讯。
tokenizer
比较好玩的一个库,直接调用 PHP解释器(zend引擎)解析你提供的源代码。
xdebug
需要额外安装,用于调试PHP代码。
xml_xxx
一系列用于处理xml的扩展库。
zip
用于压缩和解压缩 zip 文件的扩展库。
Environment
PHP 环境信息。
PHP Variables
PHP全局变量。
总结
至此,就给大家讲完了 phpinfo() 中提供的所有信息,如果你能将其中包含的所有扩展灵活使用,已经足以解决大多数开发问题。
领取专属 10元无门槛券
私享最新 技术干货