Есть код, который берёт данные из json в массив, но при обращении по ключу к такому массиву доступ по ключу не работает.
$json = '{"1411":"фыафыва фвафыв","1410":"","1409":"","1411":"фыафыва фвафыв","1410":"tersy","1409":""}';
$images = (array)json_decode(stripslashes($json));
$ids = array (
0 => '1411',
1 => '1410',
);
$arr = array();
if(!empty($images)){
foreach ($ids as $id){
$arr[$id] = $images[$id];
}
}
echo 'arr';
echo '<div><pre>';
echo var_export($arr,true);
echo '</pre></div>';
echo 'images';
echo '<div><pre>';
echo var_export($images,true);
echo '</pre></div>';
В результате вывод такой:
arr
array (
1411 => NULL,
1410 => NULL,
)
images
array (
'1411' => 'фыафыва фвафыв',
'1410' => 'tersy',
'1409' => '',
)
а должно быть так:
array (
1411 => 'фыафыва фвафыв',
1410 => 'tersy',
)
как исправить подскажите?
пытался конвертировать ключ $id в строку, безрезультатно
Проблема в способе, которым декодируется json.
Если делать по-человечески, а именно
$images = json_decode($json, true);
то код будет работать в любой версии РНР.
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости