> php教程 > php >

Vscode开发php时intelephense插件提示各种未定义报错的解决办法

来源:网络 文章列表 2020-10-14 8
Vscode开发php时intelephense插件提示各种未定义报错的解决办法

报错信息比如:

Undefined method 'success'.

Undefined method '__construct'.

Expected type 'object'. Found 'void'.

....

 

解决方法:

Intelephense 1.3 添加了未定义的类型、函数、常量、类常量、方法和属性诊断,其中以前在 1.2 中只有未定义的变量诊断。

某些框架的编写方式为用户提供了方便的快捷方式,但使静态分析引擎难以发现运行时可用的符号。

像https://github.com/barryvdh/laravel-ide-helper这样的 Stub 生成器有助于填补这里的空白,并且与 Laravel 一起使用该生成器将通过提供易于发现的符号的具体定义来处理许多错误诊断。

尽管如此,PHP 还是一种非常灵活的语言,根据代码的编写方式,可能还有其他错误未定义符号的实例。因此,自 1.3.3 起,intelephense 具有配置选项,用于启用/禁用每个类别的未定义符号,以适应工作区和编码样式。

这些选项包括:

intelephense.diagnostics.undefinedTypes 

intelephense.diagnostics.undefinedFunctions 

intelephense.diagnostics.undefinedConstants 

intelephense.diagnostics.undefinedClassConstants 

intelephense.diagnostics.undefinedMethods 

intelephense.diagnostics.undefinedProperties 

intelephense.diagnostics.undefinedVariables

在setting.json配置文件里自己需要关闭的,例如

"intelephense.diagnostics.undefinedFunctions": false

设置为 false,除非将给出版本 1.2 的行为。请参阅 VSCode 设置 UI 并搜索 。intelephense.diagnostics.undefinedVariablesintelephense

另外一种解决方法:将版本退回到1.2.3即可

版权声明

本站部分原创文章,部分文章整理自网络。如有转载的文章侵犯了您的版权,请联系站长删除处理。如果您有优质文章,欢迎发稿给我们!联系站长:
愿本站的内容能为您的学习、工作带来绵薄之力。

评论

  • 随机获取
点击刷新
精彩评论