使用curl请求设置超时模拟php异步请求:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 | /** * 1、curl 异步请求不需要等待返回值(秒级) * * @param [type] $url [description] * @return [type] [description] */ function curl_request_noreply ( $url ) { $ch = curl_init(); curl_setopt( $ch , CURLOPT_URL, $url ); curl_setopt( $ch , CURLOPT_HEADER, 0); curl_setopt( $ch , CURLOPT_RETURNTRANSFER, 1); curl_setopt( $ch , CURLOPT_TIMEOUT, 1); // 秒级 $content = curl_exec( $ch ); curl_close( $ch ); // echo $content; } /** * 2 、 curl 异步请求不需要等待返回值(毫秒级) * * @param [type] $url [description] * @return [type] [description] */ function curl_request_noreply ( $url ) { $ch = curl_init(); curl_setopt( $ch , CURLOPT_URL, $url ); curl_setopt( $ch , CURLOPT_HEADER, 0); curl_setopt( $ch , CURLOPT_RETURNTRANSFER, 1); curl_setopt( $ch , CURLOPT_NOSIGNAL, true); // 注意,毫秒超时一定要设置这个 curl_setopt( $ch , CURLOPT_TIMEOUT_MS, 100); // 超时时间200毫秒 $content = curl_exec( $ch ); curl_close( $ch ); // echo $content; } |
热门文章