PHP明明定义却显示未定义报错解决

问题:

明明在其他文件中定义并已经引用,但是还会显示未定义:

解决方案:

方法1  切换到低版本(测试1.2.3可以)操作如下。

打开扩展市场,在已安装扩展中找到 PHP intelephense,点击右侧设置,然后选择安装另一个版本。如下图。

方法2 关闭高版本提示,操作如下。

打开扩展市场,在已安装扩展中找到 PHP intelephense,点击右侧设置,然后选择扩展设置

在右侧扩展设置中找到 diagnostics Undefined method,取消勾选,如下图。重新打开代码文件,提示消失。

(其实报错说定义不到啥酒把那个勾取消掉行了,不过不知道这样做会不会会真的可以)

(万一真的是未定义的错怎么办呢,所以我还是倾向第一种吧。。)

原因:

是因为php高版本找不到方法定义我们引用的东西,所以被认为是没定义

低版本就不会这样

资料:

VS Code当中PHP引用类不能被识别的常见原因及解决方法 - 芒果鱼 - 博客园 (cnblogs.com)

实际上VS code功能丰富是个美好的错觉,因为大部分针对特定编程语言和技术的功能都是第三方插件提供的,VS Code的核心始终非常精简。正因此在很多时候,VS code的提示报错并不是真正的代码错误,只是某些插件解析不同编程语言,和版本所带来的问题。而这些插件扩展误报的错误除了让人看着不爽之外,其实并不影响代码正常的运行。像这种的问题很多只需要停用相关不必要的插件即可解决问题。

  • 5
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值