VSCode 的智能化中未定义的类型“Imagick”

我遇到了一个问题,我通过Pecl安装了Imagick,而Intelefens不知道如何处理该扩展,并且无法显示任何代码完成,即使该扩展已正确安装在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

事实证明,智能只是没有配置为知道这个扩展是什么。
解决方案非常简单:

  1. 转到 VSCode 中的智能扩展设置
  2. 转到名为“智能:存根”的设置
  3. 添加名为“imagick”的新项目
  4. 保存并关闭设置(尽管我相信它们是自动保存
    的)

完成所有这些操作后,Intelephense 将显示有关 Imagick 的所有信息,并且自动完成工作就好了:证明

希望这有助于某人!


答案 2

推荐