php使用file_get_contents获取手机页面源代码


当我们想要获取一个手机页面的源代码的时候,使用file_get_contents可能不会得到我们想要的结果,因为,当使用file_get_contents的时候,默认采用了pc进行访问,所以可能会导致获取的实际是pc的源代码。所以为了获取手机端的源代码。我们应该使用curl。


//手机浏览器访问
public function getMobileURLToData($url)
{
   $HTTP_Server = $url;
   $ch = curl_init();
   curl_setopt($ch, CURLOPT_URL, $HTTP_Server);
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
   curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
   curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Linux; U; Android 4.1.1; zh-cn; MI 2S Build/JRO03L) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30 XiaoMi/MiuiBrowser/1.0");
   $res = curl_exec($ch);
   curl_close($ch);
   return $res;
}


调用这个函数,就会得到手机url的源代码,所以有些问题,我们要从源头一点点分析,才能找到根源,否则一直在pc的源代码里用正则匹配,会一直以为自己的正则写的有问题,其实是你的源代码本身就有问题了。