Twitch API 显示主播列表

Twitch API to Show List of Streamers

所以我在这里要做的是创建一个页面来显示特定用户的列表,并使用 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>";
}

?>

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

我还发现一个问题是要显示 3 个以上的流。在此我列出了 4 个流,第 4 个处于活动状态(在 post 时)但是它被忽略了,运行 的第 3 个流确实显示了。

前两个都是离线的,应该显示离线图的地方,什么都没有,所以不显示,除非流离线。

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

谢谢!

您可以遍历第一个数组并检查特定频道是否在线,而不是循环遍历 dataArray。检查dataArray中是否存在索引,如果不存在,则用离线通道输出新的echo。