不确定如何解决此错误
注意:未定义的偏移量:在第50行的C:\ xampp \ htdocs \ streams.php中为0 注意:未定义的偏移量:在第53行的C:\ xampp \ htdocs \ streams.php中为0 注意:未定义的偏移量:第54行的C:\ xampp \ htdocs \ streams.php中的0
编码指的是:
<?php
$members = array("hawkmyg");
$userGrab = "http://api.justin.tv/api/stream/list.json?channel=";
$checkedOnline = array ();
foreach($members as $i =>$value){
$userGrab .= ",";
$userGrab .= $value;
}
unset($value);
//grabs the channel data from twitch.tv streams
$json_file = file_get_contents($userGrab, 0, null, null);
$json_array = json_decode($json_file, true);
//get's member names from stream url's and checks for online members
foreach($members as $i =>$value){
$title = $json_array[$i]['channel']['channel_url'];
$array = explode('/', $title);
$member = end($array);
$viewer = $json_array[$i] ['stream_count'];
onlinecheck($member, $viewer);
$checkedOnline[] = signin($member);
}
无法弄清楚如何修复
答案 0 :(得分:0)
当调用具有特定索引的数组元素(例如echo $array[$index]
)时会发生未定义偏移的通知,但索引未在数组中定义。
在您的代码中,数组$members
有一个元素(索引为0
)。所以我们在你的foreach循环中走了一次
您拨打$json_array[$i]['channel']['channel_url']
$i = 0
,但$json_array[0]
不存在。
您应该使用$json_array
或print_r()
检查var_dump()
的内容。
我自己测试了脚本,当我读到链接http://api.justin.tv/api/stream/list.json?channel=,hawkmyg的内容时,它返回了一个空的JSON数组。频道'hawkmyg'不存在。
我尝试了频道'hatoyatv',它只是起作用。