読者です 読者をやめる 読者になる 読者になる

masayuki5160's diary

名古屋でWeb系エンジニアしてます。

youtube APIをつかってみた

以下参考にしたサイト。
わかりやすくまとめてあったので意外に簡単にできました。

Youtube 動画埋め込みプレーヤー
http://phpjavascriptroom.com/?t=strm&p=youtubeapi_player_parameters

Youtube APIで動画をPHPを使って取得する使い方
http://bl6.jp/web/api/youtube-api-php/

PHP5でYoutube API:キーワードによる動画検索を利用する
http://weblabo.sakura.ne.jp/blog/2009/01/php5youtube_api.html

作成したソース、実行結果は以下。
なぜかAKBだらけにw


<body>
<div class="container_12">
<h1><br/><br/>Music</h1>
<table border=0>
<?php
//列の位置
$col = 0;

$feedURL = "http://gdata.youtube.com/feeds/api/videos?vq=PV 音楽 公式&max-results=12&start-index=1&orderby=viewCount";
$sxml = simplexml_load_file($feedURL);
foreach($sxml->entry as $entry){
//列加算
$col++;

$media = $entry->children('http://search.yahoo.com/mrss/');
// タイトル
$title = $entry->title;
// 詳細
$desc = $media->group->description;
// URL
$attrs = $media->group->player->attributes();
$watch = $attrs['url'];
// サムネイル
$content = $media->group->content->attributes();
$attrs = $media->group->thumbnail[0]->attributes();
$thumbnail = $attrs['url'];
// 動画の時間 (秒)
$yt = $media->children('http://gdata.youtube.com/schemas/2007');
$attrs = $yt->duration->attributes();
$length = $attrs['seconds'];
// 再生回数
$yt = $entry->children('http://gdata.youtube.com/schemas/2007');
$attrs = $yt->statistics->attributes();
$viewCount = $attrs['viewCount'];
// 評価
$gd = $entry->children('http://schemas.google.com/g/2005');
if ($gd->rating) {
$attrs = $gd->rating->attributes();
$rating = $attrs['average'];
} else {
$rating = 0;
}
// ID
$arr = explode('/',$entry->id);
$id = $arr[count($arr)-1];
?>
<!-- 動画埋め込みプレーヤーの表示 -->
<td bgcolor="#EEEEEE">
<!--<p>タイトル:<?php echo $title; ?></p>-->
<!--<p>詳細:<?php echo $desc; ?></p>-->
<iframe title="YouTube video player" class="youtube-player" type="text/html" width="300" height="300" src="<?php echo $content -> url; ?>" frameborder="0"></iframe>
</td>
<?php
if($col==3)
{
echo '</tr>';
$col=0;
}
}//foreach文終わり
?>
</div>
</table>
</body>