YouTube with Symfony



Symfonyで開発中のアプリケーションにYouTubeの動画をマッシュアップしようと思い、Services_YouTubeを使おうとしたのですが、Strict Standardsを吐きまくり、対処が面倒になったので、PEARを使わないことにしました。そこで、

$url = "http://www.youtube.com/api2_rest?method=youtube.videos.list_by_category_and_tag&dev_id=". $apikey . "&category_id=15&tag=" . $tag;
$res = file_get_contents($url);
$xml = simplexml_load_string($res);
$items = $xml->xpath('//video');

として、$itemsから各種データを読みだそうとしましたが、XMLElementオブジェクトとなっているため、配列操作では当然ながら読み出せず、どうやったら読み出せるのだろうか?とネットを検索していると、答えが見つかりました。
そのままずばりarray型にキャストするのです。あまりにストレートだったので、かなり意表をつかれました。

foreach ($items as $item) {
  $video = (array)$item;
  // 各種データの読み出し
}

Leave a Reply