Home > Backend Development > PHP Tutorial > php添加pcntl多线程扩展(Linux)

php添加pcntl多线程扩展(Linux)

WBOY
Release: 2016-06-20 13:05:03
Original
836 people have browsed it

php添加pcntl扩展(Linux)

pcntl扩展可以支持php的多线程操作(仅限linux)
原本需要重新编译PHP的后面configrue提示加上--enable-pcntl

由于我的php是采用yum安装的,所以不能采用上面的方式
下面介绍一个php动态添加扩展的方式 phpize

1、首先看下 phpize命令 所在的目录  (ps:我的目录/usr/bin/phpize)
如果没有找到的话 执行安装

yum install php53_devel   (ps:请注意自己的版本)
Copy after login


安装完毕后。会生成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
Copy after login


这时候出了一个错误

./configure编译正常,但make出错
error: ‘PHP_FE_END’ undeclared here (not in a function)

解决方法:

源代码有错误,进入php-5.3.17目录
sed -i 's|PHP_FE_END|{NULL,NULL,NULL}|' ./ext/**/*.c
sed -i 's|ZEND_MOD_END|{NULL,NULL,NULL}|' ./ext/**/*.c
再重新make && make install

3、编译完毕后会生成了一个 pcntl.so的文件。在php的model目录里

编辑/etc/php.ini,加入

extension=pcntl.so
Copy after login



4、重启apache

service httpd restart
Copy after login


5、测试是否安装成功

echo pcntl_fork();
Copy after login


输出:23165


Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template