您好,登錄后才能下訂單哦!
本篇內容介紹了“PhpStorm導航的概述以及導航到類、接口、Trait的介紹”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
在日常使用代碼編輯器的過程中,頻率非常高的一個需求就是能夠快速全局導航到指定類、文件、方法、行,在 PhpStorm 中可以通過兩種方式來實現這種導航。
一種是在菜單欄中點擊 Navigate,然后在下拉框選擇對應的全局導航,Class 代表類、File 代表文件、Symbol 代表符號/標記(可用于導航到指定變量、方法)、Line 代表行(需要在特定文件中操作)。
另一種是通過快捷鍵,上面的菜單欄下拉框導航選項右側已經標注了對應的快捷鍵,下面我們就可以快捷鍵為例在 Mac 系統中進行演示(Windows 操作類似,就是快捷鍵有差異)。
打開一個新安裝的最新版 Laravel 項目,以自帶的 User
類為例,要導航到這個類,可以通過快捷鍵 Command + O 打開導航窗口,在輸入框輸入 User
進行類名的全局模糊匹配,然后在下拉選項中選中要導航的類:
就會打開包含 User
類的文件了:
導航到其他類也是一樣,這里不重復演示了。除了項目代碼,還可以導航到 Composer 管理的 vendor
庫中的所有第三方擴展包代碼,比如我們想要查看 User
的父類 Model
:
另外,導航到指定接口和 Trait 共用了導航到指定類的功能,比如我們在類導航輸入框中輸入 Authenticatable
,則會列出對應的接口和 Trait:
在遵循 PSR-4 自動加載規范的現代 PHP 項目中,類名和文件名是一致的,所以導航到類也就意味著導航到了對應的文件,但對于一些不包含任何類的 PHP 文件,還是需要通過導航到文件功能進行跳轉,比如應用初始化/啟動文件、配置文件、路由文件以及定義 PHP 輔助函數的文件等。
我們可以通過快捷鍵 Shift + Command + P 文件打開導航到文件的操作界面,假設我們想要打開 Laravel 項目的數據庫配置文件,可以在輸入框輸入 database
進行文件名的全局模糊匹配,然后在下拉框選中我們期望打開的文件:
即可跳轉到對應的 database.php
配置文件:
如果想要打開定義 Laravel 自帶輔助函數的 helpers.php
文件,操作方法完全一樣,只需在導航輸入框中輸入對應文件名即可:
除了類名和文件之外,PhpStorm 還支持更細粒度的 PHP 屬性和方法導航,我們通過快捷鍵 Option + Command + O 打開對應的導航操作界面,假設我們想要在應用代碼的 Kernel
類中新增一個全局中間件,可以在輸入框輸入 middleware
跳轉到到這個屬性中進行設置:
該方法也適用于變量名的全局導航:
導航到指定的類/Trait成員方法或者獨立的 PHP 函數也是在同一個操作界面操作,比如我們想要查看 Laravel 自帶的分頁方法底層是如何實現的,可以在輸入框輸入 paginate
,然后選擇我們想要查看的方法實現即可:
再比如,我們想要查看 Laravel 自帶的 view
函數是如何實現的,在輸入框輸入 view
并選中要導航的方法即可:
最后,在已打開的當前文件中,可以通過 Command + L 打開行列導航操作界面,輸入要導航到的行號、列號即可,其中行和列通過「行號:列號」進行區分和解析:
列號一般不設置,默認值為 1
。
在圖形化 UI 界面中,通常跳轉到指定行、列的需求不大,我們可以通過鼠標和觸摸屏快速定位到指定位置。
針對類、文件、屬性、方法的導航,除了通過上述方式使用各自獨立的快捷鍵和操作界面進行導航外,在 PhpStorm 中,還可以通過 Shift + Shift 快捷鍵(連按兩次 Shift 鍵)打開匯總導航操作界面(對應的功能叫做 Search Everywhere),一次輸入,就可以全局匹配出所有相關的類、文件、屬性、方法:
是不是非常方便?之所以叫做「Search Everywhere」,是因為除了這些導航功能之外,還可以通過 Actions 對 PhpStorm 系統設置進行快速定位(這個我們后面會單獨介紹),換言之,你想要搜索的一切都可以通過這個輸入框完成,也正因為這個原因,該功能對應的快捷鍵才能位于 PhpStorm 默認開機界面的榜首:
日常我們要做任何操作,不管是找文件、找代碼,還是進行系統設置,都可以通過 Shift + Shift 呼出導航界面進行快速跳轉,它會成為你日常使用 PhpStorm 最頻繁的快捷鍵操作。
以上導航都是全局導航,如果是在某一段具體的代碼片段中,我們想要進行上下文導航,以 User
模型類的 posts
方法為例:
public function posts()
{
return $this->hasMany(Post::class, 'user_id');
}
如果我們想要查看 hasMany
方法對應的實現代碼,可以按住 Command 鍵(Windows 下對應的是 Ctrl 鍵),然后鼠標/觸摸屏點擊 hasMany
方法,即可跳轉到對應的方法實現代碼:
“PhpStorm導航的概述以及導航到類、接口、Trait的介紹”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。