如何在标记值为 X 时显示信息


How to display info if a tag value is X

我想知道如何显示来自XML的NA INFO,如果标签的值是CANFONTI。

所以,我已经更新了XML页面:http://www.cidadehoje.pt/musics/musics/te.xml

片段:

<onairplaylist radio="RADIO CIDADE HOJE">
    <element>
        <author>DOISMILEOITO</author>
        <title>SÓ FAÇO BEM (2011)</title>
        <genre>POP</genre>
        <table>CANFONTI</table>
        <id>0019826001</id>
    </element>
    <element>
        <author>Anotherguy</author>
        <title>Let's play another song</title>
        <genre>FOO</genre>
        <table>BAR</table>
        <id>9999999991</id>
    </element>
</onairplaylist>

而这段代码:

<?php
$x = simplexml_load_file('http://www.cidadehoje.pt/musics/musics/te.xml');
echo '<font color="#FFFFFF" face="Raleway-light" size="+3" style="display:inline">';
echo $x->element[0]->author[0];
echo ' - ';
echo $x->element[0]->title[0];
echo '</font>';
?>

我只想显示"作者 - 标题",如果标签"表"的值为"CANFONTI"。

你能帮我这个吗?

提前谢谢大家。

如果你的意思是这样的:

<?php
$x = simplexml_load_file('http://www.cidadehoje.pt/musics/musics/te.xml');
if($x->element[0]->table[0] == "CANFONTI")
{
    echo '<font color="#FFFFFF" face="Raleway-light" size="+3" style="display:inline">';
    echo $x->element[0]->tag[0];
    echo ' - ';
    echo $x->element[0]->title[0];
    echo '</font>';
}
?>

你应该读一些关于PHP的书。

使用 xpath() 选择所有需要的元素:

$xml = simplexml_load_string($x); // $x containing the XML
$elements = $xml->xpath("//element[table = 'CANFONTI']");

现在输出:

foreach ($elements as $element) echo $element->title . PHP_EOL;

查看它运行:https://eval.in/220617

第 2 行将选择所有带有 <title>' being 'CANFONTI<element>,并将其存储在数组$elements 中。然后循环回响。