php发送异步请求
class Tool{
public static function asyncPost($url,$params=[]){
$args = parse_url($url);
$host = $args['host'];
$path = $args['path'].'?'.http_build_query($params);
if($args['scheme'] == 'https'){
$transports = 'ssl://';
$port = !empty($args['port']) ? $args['port'] : 443;
}else{
$transports = 'tcp://';
$port = !empty($args['port']) ? $args['port'] : 80;
}
$fp = fsockopen($transports.$host,$port,$error_code,$error_msg,1);
if(!$fp){
return false;
}else{
stream_set_blocking($fp,true);
stream_set_timeout($fp,1);
$header = "GET $path HTTP/1.1\r\n";
$header .= "Host: $host\r\n";
$header .= "Connection: close\r\n\r\n";
fwrite($fp,$header);
usleep(1000);
fclose($fp);
}
}
}