Есть код, который берёт данные из 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);
то код будет работать в любой версии РНР.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Имею такой ответ сервера при регистрации пользователя,ловил через Fiddler: