YouTube Feed 有一个名为@attributes 的对象,我该如何访问它?
YouTube Feed has an object called @attributes how can I access it?
我正在尝试让 YouTube RSS 提要正常工作,但我很难从中获得我需要的属性之一。我从未见过数组的一部分以 @ 符号开头,所以我认为它可能是某种特殊元素,但我不确定。下面的代码以及我之后已经尝试过的代码。
供稿:
<?php
$xml->entry =
SimpleXMLElement::__set_state(array(
'id' => 'yt:video:DjwM9SHJznM',
'title' => 'JD19AT - Joomla! in der Uni - Community-Arbeit als Lehrveranstaltung',
'link' =>
SimpleXMLElement::__set_state(array(
'@attributes' =>
array (
'rel' => 'alternate',
'href' => 'https://www.youtube.com/watch?v=DjwM9SHJznM',
),
)),
'author' =>
SimpleXMLElement::__set_state(array(
'name' => 'J and Beyond e.V.',
'uri' => 'https://www.youtube.com/channel/UCy6ThiEDnalZOd_pgtpBk1Q',
)),
'published' => '2019-03-30T16:49:53+00:00',
'updated' => '2019-05-09T16:56:18+00:00',
));
?>
代码:
$feed = $youtubeChannelFeed;
$xml = simplexml_load_file($feed);
$html = "";
这个有效$xml->entry->title;
但这不是 $xml->entry->link
它只是说 "SimpleXML Object"
正如它所说的对象,然后我尝试使用 ->
箭头和 ['attribute']
符号。
我尝试用 \@
转义 @
但这只是导致了一个错误。
如何遍历树并获取 @attributes->href
的值?
我一直试图记住的方法是,您可以使用箭头或括号访问数组或对象中的数据。
数组以A开头,但它选择了不以A开头的那个。对象是剩下的那个。至少我记得是这样的。
在这种情况下,虽然它称它为 SimpleXMLObject
,但实际上向我展示了它是 print_r
中的 array
。所以我不得不像这样使用括号来访问:
$xml->entry->link[0]['href']
我不知道如何访问 @attributes
但我现在记得你不需要知道名字就可以访问它,你也可以使用数字格式来访问它。
老实说,我真的不知道如何使用箭头访问第一部分,因为它似乎也是一个数组。
我正在尝试让 YouTube RSS 提要正常工作,但我很难从中获得我需要的属性之一。我从未见过数组的一部分以 @ 符号开头,所以我认为它可能是某种特殊元素,但我不确定。下面的代码以及我之后已经尝试过的代码。
供稿:
<?php
$xml->entry =
SimpleXMLElement::__set_state(array(
'id' => 'yt:video:DjwM9SHJznM',
'title' => 'JD19AT - Joomla! in der Uni - Community-Arbeit als Lehrveranstaltung',
'link' =>
SimpleXMLElement::__set_state(array(
'@attributes' =>
array (
'rel' => 'alternate',
'href' => 'https://www.youtube.com/watch?v=DjwM9SHJznM',
),
)),
'author' =>
SimpleXMLElement::__set_state(array(
'name' => 'J and Beyond e.V.',
'uri' => 'https://www.youtube.com/channel/UCy6ThiEDnalZOd_pgtpBk1Q',
)),
'published' => '2019-03-30T16:49:53+00:00',
'updated' => '2019-05-09T16:56:18+00:00',
));
?>
代码:
$feed = $youtubeChannelFeed;
$xml = simplexml_load_file($feed);
$html = "";
这个有效$xml->entry->title;
但这不是 $xml->entry->link
它只是说 "SimpleXML Object"
正如它所说的对象,然后我尝试使用 ->
箭头和 ['attribute']
符号。
我尝试用 \@
转义 @
但这只是导致了一个错误。
如何遍历树并获取 @attributes->href
的值?
我一直试图记住的方法是,您可以使用箭头或括号访问数组或对象中的数据。
数组以A开头,但它选择了不以A开头的那个。对象是剩下的那个。至少我记得是这样的。
在这种情况下,虽然它称它为 SimpleXMLObject
,但实际上向我展示了它是 print_r
中的 array
。所以我不得不像这样使用括号来访问:
$xml->entry->link[0]['href']
我不知道如何访问 @attributes
但我现在记得你不需要知道名字就可以访问它,你也可以使用数字格式来访问它。
老实说,我真的不知道如何使用箭头访问第一部分,因为它似乎也是一个数组。