使用SimpleXml从xml文件中提取数据

时间:2019-05-03 17:48:38

标签: php xml simplexml

您好,我正在尝试使用SimpleXml XML 文件提取数据,但没有从LA 1标记提取display-name

这是XML:

<tv generator-info-name="munich" generator-info-url="http://test.com">
    <channel id="254">
        <display-name lang="es">LA 1</display-name>
    </channel>
</tv>

这是我用来从id标记中提取channel属性的代码:

 $epg = simplexml_load_file("epg.xml") or die("Error: Cannot create object");
 foreach($epg->channel as $canal) {
     echo $canal[id];
 }

2 个答案:

答案 0 :(得分:4)

由于要显示的元素名称中包含 public void start() { if(current != null){ current.show(); return; } Form hi = new Form("Login", new BorderLayout(BorderLayout.CENTER_BEHAVIOR_CENTER)); hi.show(); BorderLayout borderLayout = new BorderLayout(BorderLayout.CENTER_BEHAVIOR_CENTER); WebView web = new WebView(); web.getEngine().load("http://google.com"); } ,因此您需要使用来输出该元素(我将其转换为字符串只是为了脚)...

-

使用

echo (string)$canal->{'display-name'};

将被解释为$canal->display-name 减去$canal->display

答案 1 :(得分:0)

您可以使用xml_parser_create

$xml = '<tv generator-info-name="munich" generator-info-url="http://test.com">
   <channel id="254">
    <display-name lang="es">LA 1</display-name>
   </channel>
</tv>';
$xml = new SimpleXMLElement($string);
echo $xml->xpath('//display-name')[0];