VS Code當中PHP引用類不能被識別的常見原因及解決方法


最近開發過程中被詢問到VS code不能識別PHP引用類該怎么解決的問題,我當時就想,不是吧?不是吧?那么強大的VS code 不會還有人沒有上手的吧?難道真的會有人被這種問題勸退‘忍痛割愛’嘛??是時候要退回到phpstrom那種萌新IDE重新忍受界面慢吞吞的時候了嗎??不,21世紀的使用者要的是絲滑,不是蒙圈,拒絕卡頓。廢話少說~~下面就帶大家一起解決這一問題

 

首先我們要知道VS code的強大,正是依托於其對於各種擴展插件的良好支持。

實際上VS code功能豐富是個美好的錯覺,因為大部分針對特定編程語言和技術的功能都是第三方插件提供的,VS Code的核心始終非常精簡。正因此在很多時候,VS code的提示報錯並不是真正的代碼錯誤,只是某些插件解析不同編程語言,和版本所帶來的問題。而這些插件擴展誤報的錯誤除了讓人看着不爽之外,其實並不影響代碼正常的運行。像這種的問題很多只需要停用相關不必要的插件即可解決問題。

 

如上 :我們實例化一個Memcache類,提示中便是PHP Intelephense插件的報錯。常見的問題以及解決方法如下

1:PHP Intelephense版本原因

解決方法:

進入插件管理面板,選擇PHP Intelephense插件,此時可能看到的是1.7.1版本的。

選擇安裝其他版本->1.2.3,安裝完畢后,重啟一下編輯器。

問題即可解決。

2:確定的誤報錯誤

解決方法:

在插件界面找到PHP Intelephense的插件的設置小齒輪圖標,找到extension settings也就是插件設置。把檢測Undefined Methods和Undefined Types兩項功能取消勾選。把報錯的文件關掉重新加載, 解決。

3:環境問題

解決方法

打開PHP Intelephense插件設置界面,找到上方搜索框,查找關鍵字Stubs->點擊Add Item->選項中找到yaf->點擊OK

這個方案需要細致調試本地環境,一些Yaf中特殊的寫法會引起IDE提示莫名的語法錯誤,例如控制器中的assign語法的參數問題。一般情況下,我們不使用這個方案。除非為了避免觸發誤報bug而修改生產代碼。

4:PHP Intelephense智能感知,沒有添加相應擴展

解決方法

在插件界面找到PHP Intelephense的插件的設置小齒輪圖標,找到extension settings也就是插件設置,找到 Intelephense: Stubs,然后手動添加Intelephense無法感應到的類,如下圖(此方法僅官方支持的擴展有效,自定義類文件可是不能添加的)即可解決問題。

 

 

最終效果

了解更多可以關注 我的語雀 哦!來這里找找看有沒有你想要的答案呢?每天更新 新的知識點,細節中!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM