Home > Article > Backend Development > How to solve the problem that php uses the file_get_contents method to grab web page data and appears garbled
We all often encounter garbled characters when capturing data, which makes people collapse. Today I will mainly discuss with you how to solve the problem of garbled webpage data captured by PHP using the file_get_contents method. Friends who need it can refer to it. I hope it can help everyone. Let’s take a look with the editor below.
Method 1:
## Will $data=file_get_contents ($url); change to $data=file_get_contents("compress.zlib://".$url);.
The reason is that the content of the webpage is GZIP compressed.
Method 2:
Use curl Method capture,
Define a function
function curl_get($url, $gzip=false) { $curl = curl_init($url);curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10); if($gzip) curl_setopt($curl, CURLOPT_ENCODING, "gzip"); // 关键在这里$content = curl_exec($curl);curl_close($curl);return $content; }
Then call it, $data = curl_get ($url,false);
Related recommendations:Two solutions to using file_get_contents to grab garbled web pages
php file_get_contents grabs the garbled content
php file_get_contents gets the garbled code caused by gzip encoding of the web content
The above is the detailed content of How to solve the problem that php uses the file_get_contents method to grab web page data and appears garbled. For more information, please follow other related articles on the PHP Chinese website!