PHP源码下载
采用PHP的三个版本号进行性能测试, 版本及代码官网下载地址如下:
使用wget下载
wget https://www.php.net/distributions/php-7.2.27.tar.gz
, 修改链接对应的版本号即可。
PHP编译安装
- 在此以php5.6为例,
tar -zxvf php-5.6.37.tar.gz
得到文件夹php-5.6.37
。 cd php-5.6.37 && ./configure -h
可查看所有的编译参数, 这里仅开启php-fpm,更多参数可自行查看。- 生成makefile:
./configure --prefix=/root/php/php5.6.37 --enable- fpm
, 期间可能提示缺少某些依赖,如libxml2
,通过yum install libxml2-dev
安装再次进行configure即可,同理出现缺少其他的依赖,安装对应依赖再次进行configure即可。 - 编译并安装:
make -j4 && make install
, -j利用CPU多核编译,加快编译速度,取决于电脑本身的CPU核心数。 - 其他版本操作相同。
PHP性能测试
- 在PHP源码目录下的Zend目录下有个bench.php,通过
vim /root/php-5.6.37/Zend/bench.php
查看其详细实现, 该文件的代码实现了一些常用的操作的计时操作,下面分别利用三个版本的PHP来执行该段代码,比较其运行时间差。 - 分别用php5.6, php7.2, php7.4运行
/root/php-5.6.37/Zend/bench.php
。 - php5.6:
/root/php/php5.6.37/bin/php /root/php-5.6.37/Zend/bench.php
。
php7.2:
/root/php/php7.2.27/bin/php /root/php-5.6.37/Zend/bench.php
php7.4:
/root/php/php7.4.2/bin/php /root/php-5.6.37/Zend/bench.php
- 可以看到php7比php5快3倍以上,php7小版本相比较性能也有所差距。