除了PHP核心本身,在過去的幾年里,我們看到了圍繞PHP開發(fā)的工具的增加。首先我們想到的是靜態(tài)代碼分析工具,像Vimeo團隊開發(fā)的Psalm,以及Phan和PHPStan。
這些工具將靜態(tài)分析你的PHP代碼并報告任何類型錯誤,以及可能導致的bug等等。在某種程度上,它們提供的功能可以與TypeScript相媲美。但是PHP現(xiàn)在不提供轉(zhuǎn)換(transpile),所以不允許使用自定義語法。
盡管這意味著我們需要依賴docblocks,但是PHP之父Rasmus Lerdorf確實提到了在核心中添加靜態(tài)分析引擎的想法。雖然潛力巨大,但這也是一項艱巨的任務(wù)。
說到轉(zhuǎn)換(transpiling)。受到 JavaScript 社區(qū)的啟發(fā),目前 已經(jīng)已經(jīng)有人開始在用戶領(lǐng)域擴展PHP語法。一個名為Pre的項目就是這樣做的,它允許新的PHP語法轉(zhuǎn)換為普通的 PHP 代碼。
雖然這個想法已經(jīng)在 JavaScript 中被證明可行,但是只有先提供了適當?shù)腎DE和靜態(tài)分析支持,它才能在PHP中工作。這是一個非常有趣的想法,但它必須經(jīng)歷一個成長過程才能稱為“主流”。