Подтвердить что ты не робот

PHP: нужна функция json_encode() 5.3 в 5.2

Короче говоря, клиентский хостинг использует php 5.2.5, и я отчаянно нуждаюсь в использовании опции JSON_FORCE_OBJECT с json_encode(), которая поставляется с 5.3. Кто-нибудь знает какой-то эквивалент для этой цели? Укажите это пожалуйста.

4b9b3361

Ответ 1

Кастинг как объект до кодирования работал у меня на 5.2.5:

$array = array(1,2,3);

echo json_encode($array);
// [0,1,2]
echo json_encode((object)$array);
// {"0":1,"1":2,"2":3}

И использование PHP 5.3 дает тот же результат:

echo json_encode($array);
// [0,1,2]
echo json_encode($array, JSON_FORCE_OBJECT);
// {"0":1,"1":2,"2":3}

Вы также можете попробовать это решение из другого потока. Не уверен, что такое ваш прецедент.

Ответ 2

Вы можете использовать пакет pear PHP для поддержки json_encode в старых версиях PHP. Кажется, он поддерживает закодированные объекты.

Оформить заказ http://pear.php.net/package/Services_JSON/