我正在使用sdk对you tube api进行查询,以检索有关给定主题的视频列表。
使用提供的示例,我可以将结果输出到控制台,但我希望将其插入到mysql数据库中。我使用的代码是:
$results = $youtube->search->listSearch('id,snippet', array(
'q' => $term,
'maxResults' => 50,
'order' => "date",
'regionCode' => "GB",
));
$videos = '';
$channels = '';
foreach ($results['items'] as $searchResult) {
echo $results;
echo $searchresults;
$query = "insert into data(VideoId,Title)values "
. "($searchResult->videoId,"
. "$searchResult->title)";
$result = mysql_query($query);
}
但这返回一个错误:
谁能指出我正确的方向?
最佳答案
在库代码中,查看/Service/YouTube.php
文件以找出返回数据的类型。
对于您的示例,我在该文件中查找了listSearch
方法。它返回一个Google_Service_YouTube_SearchListResponse
。寻找该类(在同一文件中),我们可以看到项目类型为Google_Service_YouTube_SearchResult
,您应该使用以下命令获取它:
$items = $results->getItems();
要获取ID和标题,您应该执行以下操作:
$videoId = $searchResult->getId()->getVideoId();
$videoTitle = $searchResult->getSnippet()->getTitle();