Неопределенный тип Imagick в интеллекте VSCode

У меня возникла проблема, когда я установил Imagick через Pecl, а Intelephense не знал, что делать с этим расширением, и не смог показать завершение кода, даже если расширение было правильно установлено в файле php.ini и работало нормально.
Некоторые снимки экрана для ясности:
1. Код, в котором используется Imagick.
2. Вывод Bash, показывающий, что расширение imagick установлено в php.ini:

ddruganov@MBP-Demid:~$ php -i | grep imagick
imagick
imagick module => enabled
imagick module version => 3.4.4
imagick classes => Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel
imagick.locale_fix => 0 => 0
imagick.progress_monitor => 0 => 0
imagick.skip_version_check => 0 => 0
  1. Вывод Bash, показывающий, где находится расширение:
ddruganov@MBP-Demid:~$ mdfind imagick.so
/usr/local/lib/php/pecl/20190902/imagick.so

1 ответ

Решение

Оказывается, intelephense просто не был настроен, чтобы знать, что это за расширение.
Решение очень простое:

  1. Перейдите в настройки расширения Intelephense в VSCode
  2. Перейдите в настройку под названием "Intelephense: Stubs"
  3. Добавьте новый элемент с именем "imagick"
  4. Сохраните и закройте настройки (хотя я считаю, что они сохраняются
    автоматически)
  5. Выполнено

После того, как все это будет сделано, Intelephense показывает всю информацию об Imagick, и автозаполнение отлично работает: доказательство

Надеюсь, это кому-то поможет!

Другие вопросы по тегам