2015-10-13 76 views
0

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

<?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条流被激活(在这篇文章发布时),但是它被忽略了,第三条流正在运行。

前两个都离线,它应该显示一个离线图形,什么也没有,所以它不显示,除非流离线。

我以为我有这个正确的,但似乎我错过了这里的东西。所以我希望有人能帮助我。

谢谢!

回答

0

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