PHP Enhanced file_get_contents compatibility, priority Choice Curl expansion
function rlib_file_get_contents ($url, $referer = null, $timeout = ten) {static $curl _enabled = -1;if ($curl _enabled = =-1) {$ curl_enabled = (extension_loaded (' curl ') && function_exists (' curl_exec '))? 1:0;} $contents = null;if ($curl _enabled = = 1) {$ch = Curl_init (); curl_setopt ($ch, Curlopt_url, $url); curl_setopt ($ch, Curlopt_ TIMEOUT, $timeout); curl_setopt ($ch, Curlopt_returntransfer, 1); curl_setopt ($ch, Curlopt_ssl_verifypeer, false); curl _setopt ($ch, Curlopt_referer, ($referer = = null? $url: $referer)); curl_setopt ($ch, Curlopt_useragent, $_server["Http_ User_agent "]);//curl_setopt ($ch, Curlopt_httpheader, Array (' Accept-encoding:gzip, deflate ')); curl_setopt ($ch, curlopt_encoding, ' gzip,deflate '); curl_setopt ($ch, Curlopt_httpheader, Array (' Expect: ')); $ Contents = curl_exec ($ch), if ($contents = = FALSE) {global $g _lasterror; $g _lasterror = Curl_error ($ch); $contents = null;} Curl_close ($ch);} else {$contents = File_get_contents ($url, False, Stream_context_create (Array (' http ' = = Array (' timeout ' = $timeout, ' header ' = ' Referer: '. ($referer = = null? $url: $referer). ' \ r \ n '. ' User-agent: '. $_server["Http_user_agent"]. The IF ($contents = = FALSE) {global $g _lasterror; $g _lasterror = ' file_get_contents error '; $contents = null;} else {//$ Contents = mb_convert_encoding ($contents, ' UTF-8 ', mb_detect_encoding ($contents, ' UTF-8, GBK, GB2312 ', true));}} return $contents;}