質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.84%

  • Laravel 5

    1617questions

    Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

  • YouTube API

    84questions

    YouTube APIはYouTubeのビデオコンテンツと機能性をウェブサイト、アプリケーション、デバイスに統合することを可能にします。

laravel Youtubeからの動画取得(alaouyとYoutube Data APIを使用)

受付中

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 83

karain

score 97

Youtubeから動画を取得し表示ようとしていますが、どうすればよいか困っています。

public function index(){
        $searchWord = SearchWord::first();
        $results = Youtube::search($searchWord);
         dd($results);
        return view('welcome',['videolist' => $videoList,]);
    }

$resutsからどのようにしてブラウザで表示できる動画情報を取り出せばよいかわかりません。

https://github.com/alaouy/YoutubeのUsageを読んだのですが、よくわかりませんでした。

ddの結果

array:10 [▼
  0 => {#185 ▼
    +"kind": "youtube#searchResult"
    +"etag": ""DuHzAJ-eQIiCIp7p4ldoVcVAOeY/cx96QgLLWZH_JxHSfGIB_8-HdN0""
    +"id": {#182 ▼
      +"kind": "youtube#video"
      +"videoId": "aJOTlE1K90k"
    }
    +"snippet": {#98 ▼
      +"publishedAt": "2018-05-31T04:00:00.000Z"
      +"channelId": "UCN1hnUccO4FD5WfM7ithXaw"
      +"title": "Maroon 5 - Girls Like You ft. Cardi B"
      +"description": ""Girls Like You” is out now. http://smarturl.it/GLY For more, visit: https://www.facebook.com/maroon5 https://twitter.com/maroon5 ..."
      +"thumbnails": {#184 ▼
        +"default": {#181 ▶}
        +"medium": {#187 ▶}
        +"high": {#188 ▶}
      }
      +"channelTitle": "Maroon5VEVO"
      +"liveBroadcastContent": "none"
    }
  }
  1 => {#189 ▶}
  2 => {#196 ▶}
  3 => {#203 ▶}
  4 => {#210 ▶}
  5 => {#217 ▶}
  6 => {#224 ▶}
  7 => {#231 ▶}
  8 => {#238 ▶}
  9 => {#245 ▶}
]
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • mts10806

    2018/06/21 18:04

    $resultsには正しく意図通りの結果が取得されていますか?取得できている野のならviewに渡すやり方は分かりますか?また、どのように表示しようとしているのでしょうか?これだけでは要件(何がしたいか)部分も具体的でないため、どう回答して良いか分かりません。

    キャンセル

  • mts10806

    2018/06/21 18:05

    何が、どう分からなかったのでしょう? >読んだのですが、よくわかりませんでした。 英語文章が苦手であればGoogle翻訳を使うという手もあります。

    キャンセル

  • karain

    2018/06/21 18:09

    >$resultsには正しく意図通りの結果が取得されていますか? 正直わかりません。$resultsにブラウザに表示するための情報が含まれているか自体がわかりません

    キャンセル

  • mts10806

    2018/06/21 19:00

    videoId、channelIdあれば出せるのは出せそうですけど。あとはphp側じゃなくて表示側の仕事ですね。

    キャンセル

回答 1

0

下記がAPIの仕様なのでこの通りの情報が取れていれば成功しています。

$resultsをViewに渡したらあとは表示用のタグを(JavaScriptも必要そうですが)出力すれば良いだけです。
念のため、Viewに変数を渡す方法

念のため、Viewでループとか

API取得して動画を設置する方法については参考URL貼っておきます。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.84%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • Laravel 5

    1617questions

    Laravel 5は、PHPフレームワークLaravelの最新バージョンで、2014年11月に発表予定です。ディレクトリ構造がが現行版より大幅に変更されるほか、メソッドインジェクションやFormRequestの利用が可能になります。

  • YouTube API

    84questions

    YouTube APIはYouTubeのビデオコンテンツと機能性をウェブサイト、アプリケーション、デバイスに統合することを可能にします。