Как и в Java, когда вы перебираете список, это очень легко, это как: while(BLAH.hasNext()) { }
, так как это сделать на PHP, когда у меня есть массив внутри stdObject, который я хочу перебирать через каждый элемент?Как выполнить итерацию массива stdObject?
я получаю Catchable fatal error: Object of class stdClass could not be converted to string in /Applications/XAMPP/xamppfiles/htdocs/index.php on line 29
<?php
$apiUrl = 'https://api.quizlet.com/2.0/groups/44825?client_id=***BLOCKED FROM PUBLIC***&whitespace=1';
$curl = curl_init($apiUrl);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$json = curl_exec($curl);
if ($json) {
$data = json_decode($json);
echo "<h1>Sets from \"{$data->name}\"</h1>";
foreach ($data->sets as $key => $val) {
echo "$key: $val\n";
}
echo "</ul>";
var_dump($data);
}
?>
Можете ли вы также предоставить фактический var_dump $ data? Если это еще не работает, атрибут «sets» не должен быть массивом. –
@RyanLaBarre pastebin.com/qgWtFgxp –
Aha! Sets - это массив вложенных объектов, а не массив строк. Таким образом, вы не можете эхо «val», так как «val» является под-объектом. Редактирование моего ответа, чтобы отразить это для вас, и тогда это будет отлично! –