使用 SimpleXml 从 xml 文件中提取数据
Extracting Data from xml file using SimpleXml
您好,我正在尝试使用 SimpleXml 从 XML 文件中提取数据,但它没有从 [=14] 中提取 LA 1
=] 标签
这是 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>
这是我用来从 channel
标签中提取 id
属性的代码:
$epg = simplexml_load_file("epg.xml") or die("Error: Cannot create object");
foreach($epg->channel as $canal) {
echo $canal[id];
}
由于您要显示的元素的名称中有一个 -
,因此您需要使用(我将其转换为字符串只是为了迂腐)...
echo (string)$canal->{'display-name'};
使用
$canal->display-name
将被解释为 $canal->display
减去 name
。
您可以使用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];
您好,我正在尝试使用 SimpleXml 从 XML 文件中提取数据,但它没有从 [=14] 中提取 LA 1
=] 标签
这是 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>
这是我用来从 channel
标签中提取 id
属性的代码:
$epg = simplexml_load_file("epg.xml") or die("Error: Cannot create object");
foreach($epg->channel as $canal) {
echo $canal[id];
}
由于您要显示的元素的名称中有一个 -
,因此您需要使用(我将其转换为字符串只是为了迂腐)...
echo (string)$canal->{'display-name'};
使用
$canal->display-name
将被解释为 $canal->display
减去 name
。
您可以使用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];