json — PHP file_get_contents Превышено максимальное время выполнения (причина эмоций?)

Я начал возиться с Steam API немного назад, и я сделал простой сайт, показывающий информацию профиля, используя метод GetPlayerSummaries. Это работало отлично, пока некоторые из моих друзей не начали добавлять эмоции iOS в свое имя, что приводит к следующему:

Фатальная ошибка: Максимальное время выполнения 300 секунд превышено в файл по линии 137

Это то, что находится на этой строке в файле:

public function getPlayerSummary($steamid) {
$contents = file_get_contents( "http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key=".SteamAPI_APIKey."&steamids=".$steamid );
$json = json_decode($contents, true);

foreach($json['response']['players'] as $key => $value) {
...
}
}

(Это в функции, $ steamid определяется при вызове функции)

Это должно вернуть (JSON):

{
"response": {
"players": [
{
"steamid": "_removed_",
"communityvisibilitystate": 3,
"profilestate": 1,
"personaname": "_removed_ ��",
"lastlogoff": 1426734965,
"profileurl": "http://steamcommunity.com/id/_removed_/",
"avatar": "_removed_",
"avatarmedium": "_removed_",
"avatarfull": "_removed_",
"personastate": 0,
"realname": "_removed_",
"primaryclanid": "_removed_",
"timecreated": 1349251405,
"personastateflags": 0,
"loccountrycode": "DE"}
]

}

}

Но «��» в имени персонажа портит его, так как оно работает для всех остальных без него: / Это эмоция призрака, то же самое происходит с другим другом, использующим эмоцию обезьяны в своем имени.

Кто-нибудь знает, как я могу решить эту проблему?

0

Решение

поместите следующую строку вверху файла php,

ini_set("max_execution_time", 0);
0

Другие решения

Замечания:

Если вы открываете URI со специальными символами, например пробелами, вам нужно закодировать URI с помощью urlencode ().

http://php.net/manual/en/function.file-get-contents.php

0

По вопросам рекламы [email protected]