Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php SimpleXML创建的数组中的属性显示为NULL_Php_Arrays_Xml_Simplexml - Fatal编程技术网

Php SimpleXML创建的数组中的属性显示为NULL

Php SimpleXML创建的数组中的属性显示为NULL,php,arrays,xml,simplexml,Php,Arrays,Xml,Simplexml,我有以下XML: <category-links> <category-link id="2350"> <name locale="de">Wasserkocher</name> </category-link> </category-links> 我想输出以下内容: <tr> <td>category-link > id</td>

我有以下XML:

<category-links>
    <category-link id="2350">
        <name locale="de">Wasserkocher</name>
    </category-link>
</category-links>
我想输出以下内容:

<tr>
    <td>category-link > id</td>
    <td><?= $p->{'category-links'}->{'category-link'}->{'@attributes'}->id ?></td>
</tr>
<tr>
    <td>category-link > name</td>
    <td><?= $p->{'category-links'}->{'category-link'}->name ?></td>
</tr>
给出空值

以各种方式用括号替换箭头不会改变任何事情

我想,我可以用字符串替换来“解决”这个问题,删除数组中的@符号


是否有任何方法可以在不进行这种笨拙测量的情况下输出ID?

否,访问属性的方法是使用
->attributes()
方法:

<td><?= $p->{'category-links'}->{'category-link'}->attributes()->id; ?></td>

var_dump($p->{'category-links'}->{'category-link'}->{'@attributes'}->id)
<td><?= $p->{'category-links'}->{'category-link'}->attributes()->id; ?></td>