> 백엔드 개발 > PHP 튜토리얼 > PHP 일기예보 코드의 예

PHP 일기예보 코드의 예

WBOY
풀어 주다: 2016-07-25 08:55:57
원래의
1508명이 탐색했습니다.
  1. /**
  2. * php 天气预报代码
  3. * by bbs.it-home.org
  4. */
  5. if(!isset($_GET['q'])){
  6. //根据IP查询所在地
  7. $p = file_get_contents("http://bbs.it-home.org/ip/?q={$_SERVER['HTTP_X_FORWARDED_FOR']}");
  8. }
  9. else{
  10. $p = $_GET['q'];
  11. }
  12. $k = 0;
  13. $encoding = mb_detect_encoding($p);
  14. if($encoding != "UTF-8"){
  15. $p = mb_convert_encoding($p,"utf-8","gbk");
  16. }
  17. $p_arr = array(
  18. "01" => "北京",
  19. "02" => "上海",
  20. "03" => "天津",
  21. "04" => "重庆",
  22. "05" => "黑龙江",
  23. "06" => "吉林",
  24. "07" => "辽宁",
  25. "08" => "内蒙古",
  26. "09" => "河北",
  27. "10" => "山西",
  28. "11" => "陕西",
  29. "12" => "山东",
  30. "13" => "新疆",
  31. "14" => "西藏",
  32. "15" => "青海",
  33. "16" => "甘肃",
  34. "17" => "宁夏",
  35. "18" => "河南",
  36. "19" => "江苏",
  37. "20" => "湖北",
  38. "21" => "浙江",
  39. "22" => "安徽",
  40. "23" => "福建",
  41. "24" => "江西",
  42. "25" => "湖南",
  43. "26" => "贵州",
  44. "27" => "四川",
  45. "28" => "广东",
  46. "29" => "云南",
  47. "30" => "广西",
  48. "31" => "海南",
  49. "32" => "香港",
  50. "33" => "澳门",
  51. "34" => "台湾"
  52. );
  53. function find(&$item,$key,$data){
  54. global $k;
  55. if(preg_match("/$item/u",$data)){
  56. $k = $key;
  57. }
  58. }
  59. function get_data_arr($key){
  60. if(!file_exists("./data/city{$key}.xml")){
  61. $c =file_get_contents( "http://m.weather.com.cn/data5/city{$key}.xml" );
  62. file_put_contents("./data/city{$key}.xml",$c);
  63. }
  64. else{
  65. $c = file_get_contents("./data/city{$key}.xml");
  66. }
  67. $arr = explode(",",$c);
  68. foreach($arr as $v){
  69. $data = explode("|",$v);
  70. $ret[$data[0]] = $data[1];
  71. }
  72. return $ret;
  73. }
  74. array_walk($p_arr,'find',$p);
  75. array_walk(get_data_arr($k),'find',$p);
  76. array_walk(get_data_arr($k),'find',$p);
  77. $ccode = get_data_arr($k);
  78. echo file_get_contents("http://m.weather.com.cn/data/{$ccode[$k]}.html");
  79. ?>
复制代码

您可能感兴趣的文章:

php调用yahoo sina api天气预报的实现代码 php调用google天气api的实例代码 Google API 获取当前天气信息的php代码


관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿