#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.