在 PhpStorm 中設定 WSL 裡的 phpcs

更新 發佈閱讀 4 分鐘
本文同步刊載於筆者個人網站:https://hhming.moe/post/phpstorm-wsl-configure-phpcs/

最近因為$$的關係,換去了新的工作。不過不幸的是新的工作大家都用 Windows + WSL 開發,不像我之前可以直接原生 Linux 用爽爽。往好處想,至少不是都用 Mac,這個大概會讓我直接往生,除非逼不得已不然不會選的。

不過也因為這樣,發現 Windows 11 的 WSL 進步好多,現在有 systemd 了,不像以前只能 call service 來看程序;也不用再跑設定才能讓 port 映射出來。不知道 Windows 10 的是否也有跟上,如果有的話就太好了。可是可以的話,到時還是直接 Framework 裝 Ubuntu 比較乾脆。

回到正題,在歡欣之餘,也碰到一些問題,最麻煩的就是今天主角──PhpStrom 中的 PHP_Codesniffer。

問題

PhpStrom 都幫你整合好了,只是設定個 PHP_Codesniffer 能有什麼問題?

在 Ubuntu 上我的確沒遇到問題,可是現在新工作後就碰到了奇怪的問題:

raw-image

先看上方這張圖,可以看到我已經設定好 PHP CLI interpeter 是 WSL 中直接安裝(非 Docker)的 PHP,版本是 8.3。

有沒有發現在 coding standard 的選單那邊有一個錯誤提示?PhpStorm 告訴我他無法找到其他 coding style 設定集。

好,接著看一下直譯器的設定:

raw-image

選好 composer 全域安裝的 phpcs 後按下 validate,嗯……Can not run PHP_Codesniffer?

在來回操作了幾次後都沒辦法成功,想說算了先不管他,回去編輯程式碼。欸,會動啊?走 PSR2,而且如果在 PhpStorm 設定關閉 PHP_Codesniffer 也真的就不會提示了,代表明明就能執行,是在唬爛我?

原本還想過說用 PhpStorm 中的 external tool 功能,可是發現有點難用,還要自己手動點就放棄了,整合度比不上有毛毛蟲在程式碼底下的 Quality tool。

解決

中間其實過了快兩週XD最後我真的受不了了決定再多試幾次,真的不行就直接放棄,關閉 PhpStrom 中的 PHP_Codesniffer 改去 Coding Style 設定就好(只是這樣好像不會每個規則都跳提示)

在我來回嘗試各種方法的時候,突然想到曾經在 StackOverflow 上看過有人說,不要用 PhpStorm 檔案選取器自動填入 \\wsl 開頭的,改成一般 Linux 使用的斜線路徑。於是我把 PhpStrom 中的 PHP_Codesniffer path 設定改成:

/home/username/.config/composer/vendor/squizlabs/php_codesniffer/bin/phpcs

結果:

raw-image

老天鵝真的能動了!趕快來去看看外層設定(如果沒變就關閉設定再打開就會重讀):

raw-image

謝天謝地,現在總算能放手開發,不用再擔心不小心寫出 failure style 了(雖然寫久就會知道,不過多個工具檢查總是有益無害)。

為了避免自己之後忘記,特地寫一篇當成筆記,或許未來有需要的人可以搜到這篇並順利解決。

留言
avatar-img
hms5232的沙龍
5會員
25內容數
hms5232的沙龍的其他內容
2025/04/03
輕小說式標題,看標題就看完整篇文。重點就是標題說的,有興趣聽廢話再點進來吧。
Thumbnail
2025/04/03
輕小說式標題,看標題就看完整篇文。重點就是標題說的,有興趣聽廢話再點進來吧。
Thumbnail
2025/03/15
謝謝蘇媽讓我的 9700X 突飛猛進,讓我拿到 3DMark Free PC Upgrade 成就!
Thumbnail
2025/03/15
謝謝蘇媽讓我的 9700X 突飛猛進,讓我拿到 3DMark Free PC Upgrade 成就!
Thumbnail
2024/12/29
上個月還在職的時候,公司有提供一些名額給員工報名參加這次的台北葡萄酒馬拉松。雖然我自己並沒特別喜歡喝紅酒,不過既然有免費的機會,當然是要去看看了!(不知道哪裡來的勇氣,相信自己能跑馬拉松)
Thumbnail
2024/12/29
上個月還在職的時候,公司有提供一些名額給員工報名參加這次的台北葡萄酒馬拉松。雖然我自己並沒特別喜歡喝紅酒,不過既然有免費的機會,當然是要去看看了!(不知道哪裡來的勇氣,相信自己能跑馬拉松)
Thumbnail
看更多
你可能也想看
Thumbnail
創作不只是個人戰,在 vocus ,也可以是一場集體冒險、組隊升級。最具代表性的創作者社群「vocus 野格團」,現在有了更強大的新夥伴加入!除了大家熟悉的「官方主題沙龍」,這次我們徵召了 8 位領域各異的「個人主題專家」,將再度嘗試創作的各種可能,和格友們激發出更多未知的火花。
Thumbnail
創作不只是個人戰,在 vocus ,也可以是一場集體冒險、組隊升級。最具代表性的創作者社群「vocus 野格團」,現在有了更強大的新夥伴加入!除了大家熟悉的「官方主題沙龍」,這次我們徵召了 8 位領域各異的「個人主題專家」,將再度嘗試創作的各種可能,和格友們激發出更多未知的火花。
Thumbnail
看完上篇 4 位新成員的靈魂拷問,是不是意猶未盡?別急,野格團新血的驚喜正接著登場!今天下篇接力的另外 4 位「個人主題專家」,戰力同樣驚人──領域從旅行美食、運動、商業投資到自我成長;這些人如何維持長跑般的創作動力?在爆紅的文章背後,又藏著哪些不為人知的洞察?5 大靈魂拷問繼續出擊
Thumbnail
看完上篇 4 位新成員的靈魂拷問,是不是意猶未盡?別急,野格團新血的驚喜正接著登場!今天下篇接力的另外 4 位「個人主題專家」,戰力同樣驚人──領域從旅行美食、運動、商業投資到自我成長;這些人如何維持長跑般的創作動力?在爆紅的文章背後,又藏著哪些不為人知的洞察?5 大靈魂拷問繼續出擊
Thumbnail
久違的使用 WSL,發現現在進步很多,但有個地方一直設定不好,就是本文今天的主角──PhpStrom 中的 PHP_Codesniffer。好在皇天不負苦心人,最後總算搞定了,所以寫一篇筆記記錄。
Thumbnail
久違的使用 WSL,發現現在進步很多,但有個地方一直設定不好,就是本文今天的主角──PhpStrom 中的 PHP_Codesniffer。好在皇天不負苦心人,最後總算搞定了,所以寫一篇筆記記錄。
Thumbnail
本文將介紹一些在 PHP 開發過程中實用的工具和技巧,涵蓋 PHP 分析器 xhprof、PHP 沙盒、PHP_CodeSniffer、PHPDoc 註解及靜態分析工具 PHPStan 等。這些工具能夠幫助開發者提高效率、減少錯誤,並改善程式碼的可讀性。
Thumbnail
本文將介紹一些在 PHP 開發過程中實用的工具和技巧,涵蓋 PHP 分析器 xhprof、PHP 沙盒、PHP_CodeSniffer、PHPDoc 註解及靜態分析工具 PHPStan 等。這些工具能夠幫助開發者提高效率、減少錯誤,並改善程式碼的可讀性。
Thumbnail
本章節旨在介紹如何在不同操作系統上安裝和配置PHP環境,並使用命令行工具進行基礎操作。此外,還介紹了使用Visual Studio Code進行PHP開發的步驟,包括安裝擴展和設置調試環境。
Thumbnail
本章節旨在介紹如何在不同操作系統上安裝和配置PHP環境,並使用命令行工具進行基礎操作。此外,還介紹了使用Visual Studio Code進行PHP開發的步驟,包括安裝擴展和設置調試環境。
Thumbnail
這個章節介紹了PHP的基本特性和應用領域,並且列舉了使用PHP的知名公司和網站。了解PHP的簡單易學、跨平台、嵌入HTML等特性,以及PHP在動態網站、電子商務、內容管理系統、社交媒體平台、數據庫管理和API開發中的應用。
Thumbnail
這個章節介紹了PHP的基本特性和應用領域,並且列舉了使用PHP的知名公司和網站。了解PHP的簡單易學、跨平台、嵌入HTML等特性,以及PHP在動態網站、電子商務、內容管理系統、社交媒體平台、數據庫管理和API開發中的應用。
Thumbnail
介紹工作後幾個常見的小問題,包括寫 Log 的好習慣、本地印出錯誤或過程、PHPCS 工具、變數儲存於設定檔、避免魔術數字、程式碼靜態分析與動態分析。
Thumbnail
介紹工作後幾個常見的小問題,包括寫 Log 的好習慣、本地印出錯誤或過程、PHPCS 工具、變數儲存於設定檔、避免魔術數字、程式碼靜態分析與動態分析。
Thumbnail
戴夫寇爾研究團隊發現PHP在Windows系統上存在遠端程式碼執行漏洞,影響多個PHP版本,包括XAMPP預設安裝環境。漏洞源於字元編碼轉換的問題,允許攻擊者在遠端伺服器上執行任意程式碼。建議使用者立即升級至最新PHP版本,或採取臨時緩解措施。
Thumbnail
戴夫寇爾研究團隊發現PHP在Windows系統上存在遠端程式碼執行漏洞,影響多個PHP版本,包括XAMPP預設安裝環境。漏洞源於字元編碼轉換的問題,允許攻擊者在遠端伺服器上執行任意程式碼。建議使用者立即升級至最新PHP版本,或採取臨時緩解措施。
Thumbnail
放鬆的週末,我與幾位同事決定提升我們的後端開發技巧,選擇了「日期範圍生成器」作為我們的小型實作。作為團隊中較有經驗的PHP工程師,我引領著團隊從基礎程式碼的撰寫開始,進而深入到物件導向的結構調整,最後提高程式可擴充性的挑戰。雖然過程中遇到不少困難,但我們通過不斷的討論和優化,最終成功克服了所有挑戰。
Thumbnail
放鬆的週末,我與幾位同事決定提升我們的後端開發技巧,選擇了「日期範圍生成器」作為我們的小型實作。作為團隊中較有經驗的PHP工程師,我引領著團隊從基礎程式碼的撰寫開始,進而深入到物件導向的結構調整,最後提高程式可擴充性的挑戰。雖然過程中遇到不少困難,但我們通過不斷的討論和優化,最終成功克服了所有挑戰。
Thumbnail
在PHP的團隊開發中,PHP CS Fixer可以確保每個開發人員的Coding Style相同,是相當重要的工具。本篇文章將會詳細說明PHP CS Fixer在Linux環境下的安裝方式。
Thumbnail
在PHP的團隊開發中,PHP CS Fixer可以確保每個開發人員的Coding Style相同,是相當重要的工具。本篇文章將會詳細說明PHP CS Fixer在Linux環境下的安裝方式。
Thumbnail
PHP(全名為「PHP: Hypertext Preprocessor」)是一門開源的伺服器端程式語言,為動態網頁開發設計。閱讀本文將讓您瞭解PHP的特點、廣泛支援、易學性、資源豐富以及跨平臺性。
Thumbnail
PHP(全名為「PHP: Hypertext Preprocessor」)是一門開源的伺服器端程式語言,為動態網頁開發設計。閱讀本文將讓您瞭解PHP的特點、廣泛支援、易學性、資源豐富以及跨平臺性。
Thumbnail
在專案開發的時候,專案架構搭建時團隊就會設定 php code style 檢查,避免整個開發團隊大家走出自己的風格,尤其是兩格空白還是四格空白,總是會有不同意見,這時候定義出團隊code style,並透過配置Github Action CI(Continuous Integration)
Thumbnail
在專案開發的時候,專案架構搭建時團隊就會設定 php code style 檢查,避免整個開發團隊大家走出自己的風格,尤其是兩格空白還是四格空白,總是會有不同意見,這時候定義出團隊code style,並透過配置Github Action CI(Continuous Integration)
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News