Twitch API显示Streamer的列表

时间:2015-10-13 08:23:15

标签: php json api twitch

所以我在这里要做的是创建一个页面来显示特定用户的列表,并使用api来提取信息以创建链接并将其指向嵌入式iframe。

<?php

/* 
The channels
*/  

$channels = array('everadiolive', 'djyumene', 'mrblades', "themittanidotcom", "daopa") ;

/* 
The part that does stuff
*/

$callAPI = implode(",",$channels);
$arrContextOptions=array(
"ssl"=>array(
"verify_peer"=>false,
"verify_peer_name"=>false,
),
);
$dataArray = json_decode(file_get_contents('https://api.twitch.tv/kraken/streams?channel=' . $callAPI, false), true);

foreach($dataArray['streams'] as $mydata){

    if($mydata['streams'] == null or $mydata['streams'] == ""){
        $name      = $mydata['channel']['display_name'];    

        echo "<a href='http://www.twitch.tv/" .$name. "/embed' target='tbox'><img src='http://streambadge.com/twitch/" .$name. ".png'></a>";
}

&GT;

这有效,但是我遇到了一些问题。它只显示在线的流(我希望它显示在第一行指定的所有内容)。

我也看到了一个问题,要显示超过3个流。在这里我列出了4个流,第4个流是活动的(在这篇文章发布时)然而它被忽略了,正在运行的第3个流确实显示了。

前两个都处于脱机状态,应该显示离线图形,没有任何内容,因此除非流处于脱机状态,否则它不会显示。

我认为我有这个正确但似乎我在这里遗漏了一些东西。所以我希望有人可以帮助我。

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以浏览第一个数组并检查特定通道是否在线,而不是循环访问dataArray。检查dataArray中是否存在索引,如果不存在,则使用脱机通道输出新的回显。