首页 > Web开发 > 详细

php异步请求模拟多进程

时间:2015-10-08 16:00:29      阅读:247      评论:0      收藏:0      [点我收藏+]

在A请求页面发起另一个B页面请求 不需要等待B页面执行结束再返回 直接往下执行A页面的请求

A页面代码

<?php
$url = ‘http://‘.$_SERVER[‘HTTP_HOST‘].dirname($_SERVER[‘PHP_SELF‘])."/send.php";
$param = array(
    ‘name‘=>‘fdipzone‘,
    ‘gender‘=>‘male‘,
    ‘age‘=>30
);
doRequest($url, $param);//发起请求
function doRequest($url, $param=array())
{
    $urlinfo = parse_url($url);
    $host = $urlinfo[‘host‘];
    $path = $urlinfo[‘path‘];
    $query = isset($param)? http_build_query($param) : ‘‘;
    $port = 80;
    $errno = 0;
    $errstr = ‘‘;
    $timeout = 10;
    $fp = fsockopen($host, $port, $errno, $errstr, $timeout);
    $out = "POST ".$path." HTTP/1.1\r\n";
    $out .= "host:".$host."\r\n";
    $out .= "content-length:".strlen($query)."\r\n";
    $out .= "content-type:application/x-www-form-urlencoded\r\n";
    $out .= "connection:close\r\n\r\n";
    $out .= $query;
    fputs($fp, $out);
    fclose($fp);
}
?>

B页面代码

<?php
for($i=0;$i<10;$i++)
{
    sleep(1);
    file_put_contents(time().".txt",time());
}
?>

然后效果如图:

技术分享

然后逐步增加了新文件

技术分享

php异步请求模拟多进程

原文:http://www.cnblogs.com/lizhaoyao/p/4860989.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!