We are often encountered in the crawl data encountered garbled phenomenon, let people crash. Today mainly and we discuss how to solve PHP with File_get_contents method Crawl Web page data garbled problem, need friends can refer to, hope to help everyone. Let's take a look at the small series below.
Method One:
Will be $data=file_get_contents ($url); Change to $data=file_get_contents ("compress.zlib://". $url);
The reason is that the web The content is gzip compressed.
Method Two:
using the Curl method to crawl,
Define a function
function Curl_get ($url, $gzip =false) { $curl = Curl_init ($url); curl_setopt ($curl, Curlopt_returntransfer, 1); curl_setopt ($curl, Curlopt_connecttimeout, ten); if ($gzip) curl_setopt ($curl, curlopt_encoding, "gzip"); The key here $content = Curl_exec ($curl); Curl_close ($curl); return $content; }
Then call, $data = Curl_get ($url, false);