次のコードがあります。
$rss = simplexml_load_file( 'http://gdata.youtube.com/feeds/api/playlists/PLEA1736AA2720470C?v=2&prettyprint=true' );
foreach ( $rss->entry as $entry ) {
// get nodes in media: namespace for media information
$media = $entry->children( 'http://search.yahoo.com/mrss/' );
$thumbs = $media->group->thumbnail;
$thumb_attrs = array();
$index = 0;
// get thumbnails attributes: url | height | width
foreach ( $thumbs as $thumb ) {
foreach ( $thumb->attributes() as $attr => $value ) {
$thumb_attrs[$index][$attr] = $value;
print $attr . ': ' . $thumb_attrs[$index][$attr] . "| ";
}
$index++;
print "<br>";
}
}
印刷は次のように出力されます。
url: http://i.ytimg.com/vi/te28_L-dO88/default.jpg| height: 90| width: 120| time: 00:00:49|
...
次の形式の xml タグから:
<media:thumbnail url='http://i.ytimg.com/vi/4l4rwvAPhfA/default.jpg' height='90' width='120' time='00:02:23.500' yt:name='default'/>
...
配列に取得していない名前空間 yt name = 'default' の属性を追加するにはどうすればよいですか?
配列から他の値にすべての幅の最も近い値を取得するにはどうすればよいですか? PHPに似たもの- 配列からの最も近い値ですが、配列が多次元であることを考慮に入れています。