簡體   English   中英

如何解析名稱中包含“ - ”的xml標簽?

[英]how to parse xml tags containing '-' in their name?

我無法使用simplexml解析php中名稱中包含“ - ”的標簽。

這是xml- http://synd.cricbuzz.com/score-gadget/gadget-scores-feed.xml

無法解析url-text和url-link。接下來的錯誤 - 1)使用未定義的常量文本 - 在C:\\ wamp \\ www \\ score1.php中假定為'text'2)使用未定義的常量鏈接 - 假設'鏈接'在C:\\ wamp \\ www \\ score1.php 3)2)使用未定義的常量鏈接 - 在C:\\ wamp \\ www \\ score1.php中假設'url'plz幫助我php解析url-text為seprate變量 - “url”和“text”

這是代碼

<?php 
    header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
    header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
    header("Cache-Control: no-store, no-cache, must-revalidate");
    header("Pragma: no-cache"); Header('Pragma: no-cache');

    $url = "http://synd.cricbuzz.com/score-gadget/gadget-scores-feed.xml";
    //$url = "C:\wamp\www\score.xml";
    $curl = curl_init();
    curl_setopt ($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

    $result = curl_exec ($curl);
    curl_close ($curl);
    print $result;
    $fp = fopen('score.xml', 'w');
    if($fp)
        fwrite($fp,  $result);  
    else
    echo "Error !";

    $url = "score.xml";
    $xml = simplexml_load_file($url,null, LIBXML_NOCDATA);
     foreach ($xml->match as $xmlinfo):
        $header=$xmlinfo->header;
        $description=$xmlinfo->description;
        $urltext=$xmlinfo->url-text;
        $urllink=$xmlinfo->url-link;
        echo $header,$description,$urltext;
    endforeach;
    //var_dump($xml);
 ?>

訪問包含PHP命名約定下不允許的字符的XML文檔中的元素(例如連字符)可以通過將元素名稱封裝在大括號和撇號中來實現。

在你的情況下:

$xmlinfo->{'url-text'}

現場演示。

來源示例#3

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM