中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

XMl 各地區天氣情況的詳細信息,并將解析的數據入庫

發布時間:2020-06-19 18:09:00 來源:網絡 閱讀:327 作者:噼里啪啦啦 欄目:軟件技術

1、關于DOM

文件名:city.php

//實現將各地區的天氣情況入庫

<?php
header("content-type:text/html;charset=utf-8");
$dsn="mysql:dbname=news;host=127.0.0.1;charset=utf8";
$user="root";
$psw="";
$pdo=new PDO($dsn,$user,$psw);
$url = "http://flash.weather.com.cn/wmaps/xml/china.xml";
//創建對象
$dom=new DOMDocument();
//print_r($dom);die;
$dom->load($url);
//讀取最外層的節點
$city=$dom->getElementsByTagName("city");
//print_r($city);die;
$len = $city->length;
for($i=0;$i<$len;$i++){
    $item = $city->item($i);
    $quName = $item->getAttribute("quName");
    //print_r($quName);die;
    $pyName = $item->getAttribute("pyName");
    $cityname = $item->getAttribute("cityname");
    $state1 = $item->getAttribute("state1");
    $state2 = $item->getAttribute("state2");
    $stateDetailed = $item->getAttribute("stateDetailed");
    $tem1 = $item->getAttribute("tem1");
    $tem2 = $item->getAttribute("tem2");
    $windState = $item->getAttribute("windState");
       //拼寫添加sql語句
    $sql = "insert into weather(quName,pyName,cityname,state1,state2,stateDetailed,tem1,tem2,windState)values('".$quName."','".$pyName."','".$cityname."','".$state1."','".$state2."','".$stateDetailed."','".$tem1."','".$tem2."','".$windState."')";
    //執行sql語句
    set_time_limit(0);//取消腳本執行時間限制
    $res = $pdo->exec($sql);
    
    //獲取省份信息
    $dom1=new DOMDocument();
    @$dom1->load("http://flash.weather.com.cn/wmaps/xml/".$pyName.".xml");
    $citys=$dom1->getElementsByTagName("city");
    $leng = $citys->length;
    for($j=0;$j<$leng;$j++){
        $item1 = $citys->item($j);
        $cityX = $item1->getAttribute("cityX");
        $cityY = $item1->getAttribute("cityY");
        $cityname = $item1->getAttribute("cityname");
        $centername = $item1->getAttribute("centername");
        $fontColor = $item1->getAttribute("fontColor");
        $pyName = $item1->getAttribute("pyName");
        $state1 = $item1->getAttribute("state1");
        $state2 = $item1->getAttribute("state2");
        $stateDetailed = $item1->getAttribute("stateDetailed");
        $tem1 = $item1->getAttribute("tem1");
        $tem2 = $item1->getAttribute("tem2");
        $temNow = $item1->getAttribute("temNow");
        $windState = $item1->getAttribute("windState");
        $windDir = $item1->getAttribute("windDir");
        $windPower = $item1->getAttribute("windPower");
        $humidity = $item1->getAttribute("humidity");
        $time = $item1->getAttribute("time");
        $url = $item1->getAttribute("url");
        //var_dump($humidity);die;
        $sql1 = "insert into sheng(cityX,cityY,cityname,centername,fontColor,pyName,state1,state2,stateDetailed,tem1,tem2,temNow,windState,windDir,windPower,humidity,time,url)values('".$cityX."','".$cityY."','".$cityname."','".$centername."','".$fontColor."','".$pyName."','".$state1."','".$state2."','".$stateDetailed."','".$tem1."','".$tem2."','".$temNow."','".$windState."','".$windDir."','".$windPower."','".$humidity."','".$time."','".$url."')";
        set_time_limit(0);//取消腳本執行時間限制
        //$data = $pdo->exec($sql1);

        //獲取市的天氣信息
        $dom2=new DOMDocument();
        @$dom2->load("http://flash.weather.com.cn/wmaps/xml/".$pyName.".xml");
        $city1=$dom2->getElementsByTagName("city");
        $length = $city1->length;
        //print_r($length);
        for($s=0;$s<$length;$s++){
            $item2 = $city1->item($s);
            $cityX = $item2->getAttribute("cityX");
            $cityY = $item2->getAttribute("cityY");
            $cityname = $item2->getAttribute("cityname");
            $centername = $item2->getAttribute("centername");
            $fontColor = $item2->getAttribute("fontColor");
            $pyName = $item2->getAttribute("pyName");
            $state1 = $item2->getAttribute("state1");
            $state2 = $item2->getAttribute("state2");
            $stateDetailed = $item2->getAttribute("stateDetailed");
            $tem1 = $item2->getAttribute("tem1");
            $tem2 = $item2->getAttribute("tem2");
            $temNow = $item2->getAttribute("temNow");
            $windState = $item2->getAttribute("windState");
            $windDir = $item2->getAttribute("windDir");
            $windPower = $item2->getAttribute("windPower");
            $humidity = $item2->getAttribute("humidity");
            $time = $item2->getAttribute("time");
            $url = $item2->getAttribute("url");
            $sql2 = "insert into sheng(cityX,cityY,cityname,centername,fontColor,pyName,state1,state2,stateDetailed,tem1,tem2,temNow,windState,windDir,windPower,humidity,time,url)values('".$cityX."','".$cityY."','".$cityname."','".$centername."','".$fontColor."','".$pyName."','".$state1."','".$state2."','".$stateDetailed."','".$tem1."','".$tem2."','".$temNow."','".$windState."','".$windDir."','".$windPower."','".$humidity."','".$time."','".$url."')";
            set_time_limit(0);//取消腳本執行時間限制
            $data1 = $pdo->exec($sql2);
        }
    }
}

?>


2、XML基于事件,循環出各地區天氣信息:jiexi.php

<?php
header("content-type:text/html;charset=utf-8");
$file = 'http://flash.weather.com.cn/wmaps/xml/china.xml';
$stack = array();
 
function startTag($parser, $name, $attrs) 
{
    global $stack;
    $tag=array("name"=>$name,"attrs"=>$attrs);   
    array_push($stack,$tag);
}
 
function cdata($parser, $cdata)
 {
     global $stack,$i;
     if(trim($cdata))
     {     
        $stack[count($stack)-1]['cdata']=$cdata;    
     }
 }
 
function endTag($parser, $name) 
{
    global $stack;   
   $stack[count($stack)-2]['children'][] = $stack[count($stack)-1];
    array_pop($stack);
}
 
$xml_parser = xml_parser_create();
 xml_set_element_handler($xml_parser, "startTag", "endTag");
 xml_set_character_data_handler($xml_parser, "cdata");
 
$data = xml_parse($xml_parser,file_get_contents($file));
 if(!$data) {
    die(sprintf("XML error: %s at line %d",
 xml_error_string(xml_get_error_code($xml_parser)),
 xml_get_current_line_number($xml_parser)));
 }
 
xml_parser_free($xml_parser);
 
print("<pre>\n");
 print_r($stack);
 print("</pre>\n");
 ?>


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

清涧县| 简阳市| 平罗县| 天门市| 山阳县| 太仆寺旗| 泗阳县| 鲜城| 肥西县| 东乌| 宁河县| 浏阳市| 灵宝市| 苏尼特右旗| 繁昌县| 雷山县| 家居| 兴业县| 富源县| 乐都县| 宣化县| 安吉县| 邹平县| 三门峡市| 青铜峡市| 威宁| 泾源县| 栾城县| 乌苏市| 诏安县| 迁安市| 丰都县| 横峰县| 新民市| 昌都县| 淮安市| 米脂县| 浦江县| 谢通门县| 四子王旗| 包头市|