pcntl扩展可以支持php的多线程操作(仅限linux),但默认安装的情况下,php是不支持此扩展的。来教大家怎么样安装。
条件:linux环境下,已安装php开发环境。
1.首先看下 phpize命令 所在的目录 (ps:我的目录/usr/bin/phpize)
如果没有找到的话 执行安装
yum install php53_devel (ps:请注意自己的版本)
安装完毕后。会生成phpize命令
2.去php.net下载相应版本的php源文件
咱们以php-5.3.17 为例吧,解压后,进入相应的模块下
cd ext/pcntl
#先执行phpize
/usr/bin/phpize
./configure --with-php-config=/usr/bin/php-config (ps:请正确的指定php-config的目录)
#编译、安装
make && make install
3.编译完毕后会生成了一个 pcntl.so的文件。在php的model目录里
编辑/etc/php.ini,加入
extension=pcntl.so
4.重启apache
service httpd restart(安装目录不同,命令略有不同)
5.测试是否安装成功
<?php
echo pcntl_fork();
?>
输出:23165(不一定是这个数,但一定是个数字)