Указан неверный аргумент для foreach () — невозможно пройти через два массива

Мой код должен преобразовать «definedex» из array_inv в «item_name» из array_schema:

<?php
$apikey = "X";
$steamid = $steamprofile['steamid'];
$url_inv = "http://api.steampowered.com/IEconItems_730/GetPlayerItems/v0001/?language=en?key=". $apikey . "&steamid=" . $steamid . "&format=json";
$url_schema = "http://git.optf2.com/schema-tracking/plain/Counter%20Strike%20Global%20Offensive%20Schema?h=counterstrikeglobaloffensive";
$array_inv_raw = file_get_contents($url_inv);
$array_schema_raw = file_get_contents($url_schema);

$array_inv = json_decode($array_inv_raw,true);
$array_schema = json_decode($array_schema_raw,true);

foreach($array_inv['result']['items'] as $item){
foreach($array_schema['result']['items'] as $schemaItem){
if($item['defindex'] == $schemaItem['defindex']){
echo $schemaItem['item_name'].'<br />';
break;
}
}
}
?>

Но это приводит к этим ошибкам:

Предупреждение:
file_get_contents (http://api.steampowered.com/IEconItems_730/GetPlayerItems/v0001/?language=en?key=x&STEAMID = 76561198037897388&Формат = JSON):
не удалось открыть поток: HTTP-запрос не выполнен! HTTP / 1.1 403 Запрещено в
/home/kartm/public_html/scripts/inv.php в строке 6

Предупреждение: в foreach () указан неверный аргумент в
/home/kartm/public_html/scripts/inv.php в строке 12

URL-адреса:
array_inv
array_schema

Я не могу найти никаких ошибок. Можете ли вы сказать мне, что не так с этим кодом?

0

Решение

Эти ошибки были вызваны опечаткой в ​​URL:

http://api.steampowered.com/IEconItems_730/GetPlayerItems/v0001/?language=en?key=x&steamid=76561198037897388&format=json

Это должно было быть & ключ = х вместо? ключ = х.

file_get_contents не смог получить URL, поэтому у foreach был неверный пустой аргумент.

0

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

Других решений пока нет …

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