本篇文章給大家?guī)?lái)了關(guān)于phpstorm的相關(guān)知識(shí),其中主要介紹關(guān)于2022.1版本正式發(fā)布的相關(guān)問題,包括改進(jìn)的blade和twig支持、新的高級(jí)php元數(shù)據(jù)功能、@method注解中的泛型以及對(duì)編輯器的一些改進(jìn)等內(nèi)容,希望對(duì)大家有幫助。
推薦學(xué)習(xí):《phpstorm》
phpstorm 2022.1 正式發(fā)布啦!該版本包括改進(jìn)的 Blade 和 Twig 支持、新的高級(jí) PHP 元數(shù)據(jù)功能、@method 注解中的泛型以及對(duì)編輯器的一些改進(jìn)等內(nèi)容,下面摘錄部分新特性作介紹:
增強(qiáng)對(duì) Blade 模板的支持
以前,PhpStorm 將 Blade 模板中的每個(gè)代碼塊視為一個(gè)獨(dú)立的范圍,這導(dǎo)致了一些問題,例如丟失代碼完成:
立即學(xué)習(xí)“PHP免費(fèi)學(xué)習(xí)筆記(深入)”;
PhpStorm 2022.1 對(duì) IDE 處理 Blade 模板的方式進(jìn)行了重大修改,現(xiàn)可在 .blade.php 文件中獲得更好的代碼完成方式:
Blade 模板中代碼完成和格式化的更多問題也得到了解決:
-
WI-37741 Blade 中 PHP 變量的自動(dòng)完成
-
WI-34830 Blade:支持 php 中的命名空間
-
WI-64460 Blade:如果有 php block (),則標(biāo)簽內(nèi)的方法缺少完成
-
WI-64463 Blade:兩個(gè)連續(xù)的@php 片段合并在一起并產(chǎn)生“預(yù)期:表達(dá)式”警告
-
WI-31196 Blade:html 注釋格式錯(cuò)誤
-
WI-40358 Blade:@if 塊內(nèi)的@section 拋出“指令未關(guān)閉”
-
WI-64594 Blade:支持@js 指令
查看 Bug 跟蹤器上的完整列表以獲取更多信息。
Twig 模板的改進(jìn)
禁用關(guān)閉標(biāo)簽自動(dòng)補(bǔ)全的新選項(xiàng)
一些用戶希望他們的 Twig 標(biāo)簽在輸入 {% 后不會(huì)自動(dòng)關(guān)閉,這種行為現(xiàn)在是可配置的:
如果將開始和結(jié)束標(biāo)記從 {% 更新到 {{ ,現(xiàn)在也將同時(shí)編輯開始和結(jié)束標(biāo)記。
WordPress 的改進(jìn)
從 Hook 調(diào)用跳轉(zhuǎn)到注冊(cè)
在 PhpStorm 2022.1 中,調(diào)用左側(cè)有一個(gè)裝訂線圖標(biāo)。單擊它可以查看 hook 用法列表,包括注冊(cè)和其他調(diào)用。
使用 get_template_directory_uri() 支持動(dòng)態(tài)路徑
此版本在路徑中添加了對(duì) get_template_directory_uri() 函數(shù)的支持。
多行和嵌套數(shù)組形狀
PhpStorm 2022.1? 在 PHPDoc 和屬性中添加了對(duì)多行和嵌套數(shù)組形狀的完全支持:
在這種情況下,可以使用數(shù)組形狀注釋定義數(shù)組結(jié)構(gòu),以獲得鍵的代碼補(bǔ)全并推斷值的類型。
也可以在 PhpStorm 中使用 Booth PHPDoc 和 Attribute 語(yǔ)法,這些語(yǔ)法支持返回類型和參數(shù)類型定義:
除了多行和嵌套注釋支持外,數(shù)組形狀還有許多其他改進(jìn)。
@method 注解中的泛型
PhpStorm 2022.1 支持 @method 定義中的泛型類型:
新的高級(jí) PHP 元數(shù)據(jù)功能
除了內(nèi)置的“代碼感知”能力,PhpStorm 還依賴于外部的代碼知識(shí)。這些知識(shí)以 PHP 存根 和.phpstorm.meta.php文件的形式出現(xiàn)。
支持 magic __call 和 __callStatic
之前如果你依賴 magic 方法的 __call 或者 __callStatic ,則可能失去其自動(dòng)補(bǔ)全功能,因?yàn)檫@些方法未定義。在 2022.1 EAP 中,可以添加相應(yīng)的元數(shù)據(jù)條目,并獲得此類調(diào)用的自動(dòng)補(bǔ)全功能:
甚至可以自動(dòng)處理動(dòng)態(tài)調(diào)用,從參數(shù)值接收特定的方法名稱:
支持@|MyClass 類型
現(xiàn)在可以將聯(lián)合類型指定為 @|MyClass :
在文檔中了解有關(guān)其他元數(shù)據(jù)功能的更多信息。
新的 Composer 項(xiàng)目向?qū)?/strong>
增強(qiáng) 新建項(xiàng)目 向?qū)В寒?dāng)創(chuàng)建一個(gè)新的空項(xiàng)目時(shí)您可以選擇為其自動(dòng)生成一個(gè)composer.json文件,并提供所需的依賴項(xiàng)。
創(chuàng)建項(xiàng)目后,PhpStorm 會(huì)提示你安裝它們:
WebDAV 支持
該版本引入了對(duì)使用 WebDAV 服務(wù)器進(jìn)行部署的支持。要配置新服務(wù)器,請(qǐng)轉(zhuǎn)到首選項(xiàng) | 構(gòu)建、執(zhí)行、部署 | 部署,然后添加一個(gè)新的 WebDAV 類型的服務(wù)器,并提供連接參數(shù):
覆蓋 Rsync 命令行參數(shù)
PhpStorm 2021.3 為 SFTP 支持引入了 Rsync,以顯著加快部署速度。Rsync 工具使用 -zar 命令行選項(xiàng)執(zhí)行,它將壓縮傳輸?shù)臄?shù)據(jù) ( z),保留傳輸文件和文件夾的權(quán)限、所有權(quán)和時(shí)間戳 ( a),并遞歸到子目錄 ( r)。
在此版本中,可以自定義選項(xiàng)集:轉(zhuǎn)到 設(shè)置 | 首選項(xiàng) | 工具 | rsync 并提供所需的一組選項(xiàng):
新的檢查
添加了一些新的檢查,旨在簡(jiǎn)化正則表達(dá)式的使用。
冗余修飾符
以下新檢查將報(bào)告正則表達(dá)式模式中使用,但不影響匹配的修飾符:
/i(不區(qū)分大小寫)在不包含字母的模式中
/D( PCRE_DOLLAR_ENDONLY ) 在不包含美元符號(hào),或包含m(PCRE_MULTILINE) 修飾符的模式中
/s(點(diǎn)匹配換行符)在不包含點(diǎn)的模式中
PhpStorm 提供Alt+Enter快速修復(fù),可以快速刪除這些修飾符。
不支持的修飾符
該/e修飾符在 PHP 7.0 及更高版本中已棄用。
新的通知工具窗口
用新的通知 工具窗口替換了事件日志實(shí)例,可以幫助用戶更好地了解來(lái)自 IDE 的通知。默認(rèn)情況下,新工具窗口位于 IDE 窗口的右下角,通知可以分為兩類:建議 和 時(shí)間線。
Markdown 改進(jìn)
從 Markdown 文件運(yùn)行命令
README 文件一般用來(lái)描述一個(gè)軟件的運(yùn)行步驟,PhpStorm 2022.1 將允許直接從這類 Markdown 文件運(yùn)行命令 —— 只需單擊命令左側(cè)裝訂線中的 運(yùn)行 圖標(biāo)即可。
新選項(xiàng)可以通過(guò) Detect 命令進(jìn)行管理,這些命令可以直接從 Preferences / Settings | 中的 Markdown 文件運(yùn)行。
復(fù)制 Markdown 的代碼片段
新版本向 Markdown 塊添加了一個(gè)新的復(fù)制代碼片段 操作,可以快速?gòu)?fù)制 Markdown 的代碼到剪貼板。
LightEdit 模式下的代碼重新格式化
在 LightEdit 模式下,無(wú)需創(chuàng)建或加載整個(gè)項(xiàng)目即可快速編輯文件。現(xiàn)在也可以在 LightEdit 模式下重新格式化代碼。
對(duì) Vue 的改進(jìn)
?JetBrains 的 IDE 2022.1 版本對(duì) Vue 3 進(jìn)行了多項(xiàng)改進(jìn),PhpStorm 整合了 WebStorm 對(duì) HTML/CSS/JS 和其他 Web 技術(shù)的所有改進(jìn)。在此版本中,如果你將組件定義為全局,IDE 將在你的 .vue 文件中識(shí)別它們。
PhpStorm 也正確支持 createApp 語(yǔ)法,它將正確匹配使用 createApp 相關(guān)元素創(chuàng)建的應(yīng)用程序。
可惜了,沒有破解版
推薦學(xué)習(xí):《phpstorm》