欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

php fsockopen利用服务器进行异步请求 自己亲自做的例子 有大用

shiping1 的头像

下面是通过 执行 fsockopen.php 而达到 异步请求any.php 

fsockopen.php
<?php

$fp = fsockopen("localhostutf8", 80, $errno, $errstr, 30);
if (!$fp) {
    echo "$errstr ($errno)<br />\n";
} else {
    
    $out = "GET /ZZZZ/php/fsockopen/any.php HTTP/1.1\r\n";
    $out .= "Host: localhostutf8\r\n";
    $out .= "Connection: Close\r\n\r\n";
    //这个是读 的时候不阻塞吧
    //stream_set_blocking($fp, 0);
    fwrite($fp, $out);
//下面的注掉,据说 就会异步了
//    while (!feof($fp)) {
//        echo fgets($fp, 128);
//    }
    fclose($fp);
}
echo "结束"
?>


any.php
<?php
set_time_limit ( 0 );
ignore_user_abort ( true );//浏览器关闭之后 还执行
$i = 0;
while ( $i ++ < 50 ) {
file_put_contents ( 'php /' .$i . '.php', "write content".$i);
sleep ( 3 );
}
?>
 


普通分类: