Предупреждения PhpStorm о функциях JSON

#php #json #phpstorm

#php #json #phpstorm

Вопрос:

Я использую PhpStorm 7.1.3.

Всякий раз, когда я использую одну из встроенных в PHP функций json_encode или json_decode , PhpStorm сообщает, что эта функция не определена.

вот скриншот

Я не хочу отключать проверку для всех необъявленных функций. Я также не хочу подавлять проверку для каждого оператора, включая json_ *.

Какой самый простой способ избавиться от этих предупреждений? Почему они вообще появляются?

Комментарии:

1. Скриншот ошибки, пожалуйста. В любом случае: вы уже пробовали File | Invalidate caches... ?

2. @LazyOne Вау, аннулирование и перезапуск были решением! Если вы опубликуете это в качестве ответа, я приму его 😉

Ответ №1:

Возможно, ваши индексы каким-то образом были повреждены (по какой-либо причине, например, сбой / неправильное завершение работы) или просто устарели (в случае обновления с предыдущей версии).

Пожалуйста, используйте File | Invalidate caches... и перезапустите IDE.

Ответ №2:

Для меня решением было установить этот флажок:введите описание изображения здесь

Ответ №3:

Начиная с PHP 5.5, некоторые дистрибутивы Linux перешли на другую реализацию JSON (https://github.com/remicollet/pecl-json-c).

Если вы используете Ubuntu (или какой-либо другой вариант Debian), установите новую реализацию JSON с помощью:

 sudo apt-get install php5-json
  

Комментарии:

1. Это интересно знать, но я использую PhpStorm в Windows. PHP-интерпретатор на моем компьютере уже поддерживает JSON, поэтому я не знаю, будет ли его установка в Linux иметь какое-либо значение здесь.

Ответ №4:

Я пробовал использовать вышеупомянутые решения:

  • Выполняется File | Invalidate caches / Restart...
  • Проверка Settings | Languages amp; Frameworks | PHP | PHP Runtime и подтверждение того, что отсутствующие проверки были проверены (в моем случае это синхронизировано с интерпретатором)

Но ни одно из них не сработало. Поэтому я решил немного продвинуться вперед и принять радикальное решение. Я удалил папку кэша установки PhpStorm.

В Linux находится в ~/.cache/JetBrains/PhpStorm2020.3 папке. Очевидно, что путь будет зависеть от используемой вами версии PhpStorm. Бьюсь об заклад, это может произойти и в других IDE JetBrains, так что это может быть полезно и в Android Studio, или IntelliJ IDEA.