Сведения о вопросе

ЧОВИД

13:01, 6th August, 2020

Теги

CodeIgniter   JSON    

JSON не работает в PHP?

Просмотров: 389   Ответов: 7

Здравствуйте, уважаемое хабрасообщество.

У меня возникла проблема, очень надеюсь, что нам ее удастся решить.


А проблема заключается в том, что функции json_encode() и json_decode() у меня на хостинге не работают.


При обычном использовании возникает ошибка:

Fatal error: Call to undefined function json_encode() in ***.php



При использовании хелпера для Code Igniter, возникает ошибка:

Message: Undefined variable: json

Filename: helpers/json_helper.php

Line Number: 53

Fatal error: Call to a member function encode() on a non-object in ...\system\application\helpers\json_helper.php on line 53



  Сведения об ответе

nYU

07:06, 5th August, 2020

Нашел себе альтернативу, если кто вдруг столкнется с тем же. Всем спасибо.


  Сведения об ответе

lourence

11:58, 26th August, 2020

Если есть возможность, то лучше обновить php до версии 5.2 или 5.3, тогда будут работать функции json_encode() и json_decode().

Иначе нужно смотреть что там за не объявленная переменная в CI, либо использовать другие реализации данных функций.


  Сведения об ответе

VERSUION

03:45, 27th August, 2020

Пишите в техническую поддержку хостинг-провайдера, чтобы они скомпилировали полноценную (с включённым расширением JSON) версию PHP.


  Сведения об ответе

park

11:19, 14th August, 2020

В крайнем случае, можно самому написать аналоги функций json_encode() и json_decode(), если нет возможности поменять хостера и/или поставку php.


  Сведения об ответе

nYU

01:26, 19th August, 2020

  Сведения об ответе

fo_I_K

20:53, 1st August, 2020

Других велосипедов чтоли мало? А лучше бросайте такой хостинг.


  Сведения об ответе

lesha

12:20, 26th August, 2020

В данном случае как выход (без разборок с хостером) могу порекомендовать воспользоваться классов
Zend_Json_Encoder и объявить функции json_encode() и json_decode() в глобальной области видимости, внутри которых соответственно производить вызов Zend_Json_Encoder::encode()/decode().
Метод конечно топорный, но если другого варианта нет, то можно попробывать.
См. framework.zend.com/manual/en/zend.json.basics.html


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться