时时商务社区

标题: php采集天气预报代码 [打印本页]

作者: 福多多fluke    时间: 2018-2-18 04:49

                  =3600*3){
      self::get_($cache_file);
    }
    $arr=unserialize(file_get_contents($cache_file));
    return $arr;
  }
  
  /**
   * 获得缓存
   *
   * @param unknown_type $cache_file
   */
  static public function get_($cache_file)
  {
    $con = file_get_contents(self:domain.self:url);
    preg_match('~
(.*?)
~s',$con,$table);
    preg_match_all('~[tr](.*?)[/tr]~s',$table[1],$trs);
    $i=0;
    $array = array();
    foreach ($trs[1] as $tr)
    {
      ++$i;
      preg_match_all('~(.*?)~s',$tr,$tds);
      $array[0][] = self::I($tds[1][1]);
      $array[1][] = self::I($tds[1][2]);
    }
    $array[0][1] = self::get_img($array[0][1]);
    $array[1][1] = self::get_img($array[1][1]);
    file_put_contents($cache_file,serialize($array));
  }
  /**
   * 数据输出测试
   *
   * @param unknown_type $data
   * @param unknown_type $s
   */
  static public function P($data,$s=0)
  {
    echo "";
    if (is_array($data))
    var_export($data);
    else
    echo $data;
    echo '';
    if ($s==0)
    exit();
  }
  /**
   * 转码
   *
   * @param unknown_type $str
   * @return unknown
   */
  static public function I($str)
  {
    return iconv('GB2312','UTF-8',$str);
  }
  /**
   * 获得图片的URL,此处可扩展,把图片抓取到本地, 增加访问速度
   *
   * @param string $str
   * @return string
   */
  static public function get_img($str)
  {
    preg_match('~src=["\']?(.*?)["\']? ~s',$str,$p);
    return self:($p[1],PATHINFO_BASENAME);
  }
}
//print_r();
$weather = weather::get();
echo "
[img][/img]
";
?>





欢迎光临 时时商务社区 (http://bbs.4435.cn/) Powered by Discuz! X3.2