为foreach()提供的参数无效当存在空格时

时间:2016-05-04 01:17:42

标签: php json

我正在建立一个网站,使用twitch api搜索游戏并列出正在玩游戏的流。一切都很好,除了我在搜索有空格的游戏时遇到错误。例如,它会列出Minecraft流,但在尝试做“英雄联盟”时会出错。

<?php
 $game = $_GET['game']; 
 $json_file = @file_get_contents("https://api.twitch.tv/kraken/streams?game{$game}", 0, null, null);
 $json = json_decode($json_file);
 foreach ($json->streams as $stream) {
 echo($stream->channel->name);
 echo "<br>";
 }
 ?> 

1 个答案:

答案 0 :(得分:0)

使用urlencode准备要在网址中使用的字符串:

$game = $_GET['game']
$game = urlencode($game);
$json_file = @file_get_contents("https://api.twitch.tv/kraken/streams?game{$game}", 0, null, null);