PHP多进程协作编程之 popen
使用popen结合SHELL命令也可以实现多进程并发编程。
实例如下:
<?php
//b.php文件
$file = 'testdir/file.txt';
for ($i=0;$i<10;$i++){
$fp = fopen($file,'a+');
fputs($fp, $i.'\r\n');
fclose($fp);
sleep(1);
}
?>
<?php
//p.php
echo 'start curl<br>';
$out = popen("/usr/local/php5/bin/php /var/htdocs/b.php &", "r");
pclose($out);
echo 'end curl<br>';
?>
运行p.php,即可实现PHP多进程异步编程。
相关文档:
用PHP实现进度条效果。
<?php
set_time_limit(0);
echo '<h2>正在安装,请稍后...</h2>',
'<div style="border:1px solid #000;width:500px;"><div id="progress_bar">loading...</div></div>';
for($i=1;$i<=100;$i++){
$width = '500';
......
昨天调用同事的一个json接口,发现调用php中的函数json_decode无法转化为数组。
<?php
$json = "{'d':[['xxx','中国','广西','xjr7670@sina.com','2010-05-01 13:35:02'],['xxx','中国','广西','xjr7670@sina.com','2010-05-01 13:35:02']],'c':13659,'n':759}";
print_r( ......
copy F:\php\php5ts.dll F:\Apache2.2\bin\
copy F:\php\libmysql.dll F:\Apache2.2\bin\
copy F:\php\php.ini-recommended F:\php\php.ini
httpd:
LoadModule php5_module "F:\php\php5apache2_2.dll"
PHPIniDir "F:\php\php.ini"
AddType application/x-httpd-php .php
php.ini:
short_open_tag = Off 改成 sho ......
php有一组进程控制函数,使得php能在*nix系统中实现跟c一样的创建子进程、使用exec函数执行程序、处理信号等功能。
引用
Process Control support in PHP implements the Unix style of process creation, program execution, signal handling and process termination. Process Control should not be enabled within a ......