PHP не может загрузить расширение Memcached из-за json? - PullRequest
1 голос
/ 16 февраля 2011

Там написано "неопределенный символ: php_json_encode", но json уже установлен? также, когда я добавляю json.so в php.ini, он говорит, что модуль уже загружен?

1 Ответ

2 голосов
/ 09 июля 2015

Поскольку вы добавляете json.so в php.ini и не удаляете php.d / json.ini

Ошибка показывает причину: json.so должен бытьзагружен до memcached.so

Пожалуйста, используйте php -m | grep memcached, чтобы проверить, успешно ли загружен memcached.so.

  • Если он показывает memcached, это означает, что он успешно выполнен.
  • Если его показывать как PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/memcached.so' - /usr/lib64/php/modules/memcached.so: undefined symbol: php_json_decode_ex in Unknown on line 0

Вот решение: например, ваш php.ini это /etc/php.ini, ваш php.d это / etc / php.d /

Решение 1

  1. комментарий 'memcached.so' в php.ini
  2. vim /etc/php.d/memcached.ini
  3. добавьте extension=memcached.so в /memcached.ini
  4. php -m | grep memcached, чтобы проверить, успешно ли загружена memcached

Решение 2

  1. rm /etc/php.d/json.ini
  2. добавить extension=json.so в php.ini перед extension=memcached.so
  3. php -m | grep memcached, чтобы проверить, успешно ли загружена memcached
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...