- 有返回结果的
- $fp = fsockopen("www.34ways.com", 80, $errno, $errstr, 30);
- if (!$fp) {
- echo "$errstr ($errno)<br />\n";
- } else {
- $out = "GET /index.php / HTTP/1.1\r\n";
- $out .= "Host: www.34ways.com\r\n";
- $out .= "Connection: Close\r\n\r\n";
- fwrite($fp, $out);
- /*忽略执行结果
- while (!feof($fp)) {
- echo fgets($fp, 128);
- }*/
- fclose($fp);
- }
- 可用于 Web 程序中,那就是用fsockopen()、fputs() 来请求一个 URL 而无需等待返回,如果你在那个被请求的页面中做些事情就相当于异步了
-
- $fp=fsockopen('localhost',80,&$errno,&$errstr,5);
- if(!$fp){
- echo "$errstr ($errno)<br />\n";
- }
- fputs($fp,"GET another_page.php?flag=1\r\n");
- fclose($fp);
比如,一个很切实的应用,某个 Blog 在每 Post 了一篇新日志后需要给所有它的订阅者发个邮件通知
a.php中日志写完 -> 点提交按钮 -> 日志插入到数据库 --->
告知撰写者发布成功
b.php 中发送邮件通知 -> [记下日志]
摘自https://blog.csdn.net/dazhi_100/article/details/46806519