温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

PhpStorm导航的概述以及导航到类、接口、Trait的介绍

发布时间:2021-09-13 18:04:35 来源:亿速云 阅读:159 作者:chen 栏目:大数据

本篇内容介绍了“PhpStorm导航的概述以及导航到类、接口、Trait的介绍”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

概述

在日常使用代码编辑器的过程中,频率非常高的一个需求就是能够快速全局导航到指定类、文件、方法、行,在 PhpStorm 中可以通过两种方式来实现这种导航。

一种是在菜单栏中点击 Navigate,然后在下拉框选择对应的全局导航,Class 代表类、File 代表文件、Symbol 代表符号/标记(可用于导航到指定变量、方法)、Line 代表行(需要在特定文件中操作)。

PhpStorm导航的概述以及导航到类、接口、Trait的介绍  

另一种是通过快捷键,上面的菜单栏下拉框导航选项右侧已经标注了对应的快捷键,下面我们就可以快捷键为例在 Mac 系统中进行演示(Windows 操作类似,就是快捷键有差异)。

导航到类、接口、Trait

打开一个新安装的最新版 Laravel 项目,以自带的 User 类为例,要导航到这个类,可以通过快捷键 Command + O 打开导航窗口,在输入框输入 User 进行类名的全局模糊匹配,然后在下拉选项中选中要导航的类:

PhpStorm导航的概述以及导航到类、接口、Trait的介绍  

就会打开包含 User 类的文件了:

PhpStorm导航的概述以及导航到类、接口、Trait的介绍  

导航到其他类也是一样,这里不重复演示了。除了项目代码,还可以导航到 Composer 管理的 vendor 库中的所有第三方扩展包代码,比如我们想要查看 User 的父类 Model

PhpStorm导航的概述以及导航到类、接口、Trait的介绍  

另外,导航到指定接口和 Trait 共用了导航到指定类的功能,比如我们在类导航输入框中输入 Authenticatable,则会列出对应的接口和 Trait:

PhpStorm导航的概述以及导航到类、接口、Trait的介绍  
 

导航到文件

在遵循 PSR-4 自动加载规范的现代 PHP 项目中,类名和文件名是一致的,所以导航到类也就意味着导航到了对应的文件,但对于一些不包含任何类的 PHP 文件,还是需要通过导航到文件功能进行跳转,比如应用初始化/启动文件、配置文件、路由文件以及定义 PHP 辅助函数的文件等。

我们可以通过快捷键 Shift + Command + P 文件打开导航到文件的操作界面,假设我们想要打开 Laravel 项目的数据库配置文件,可以在输入框输入 database 进行文件名的全局模糊匹配,然后在下拉框选中我们期望打开的文件:

PhpStorm导航的概述以及导航到类、接口、Trait的介绍  

即可跳转到对应的 database.php 配置文件:

PhpStorm导航的概述以及导航到类、接口、Trait的介绍  

如果想要打开定义 Laravel 自带辅助函数的 helpers.php 文件,操作方法完全一样,只需在导航输入框中输入对应文件名即可:

PhpStorm导航的概述以及导航到类、接口、Trait的介绍  
 

导航到属性、方法

除了类名和文件之外,PhpStorm 还支持更细粒度的 PHP 属性和方法导航,我们通过快捷键 Option + Command + O 打开对应的导航操作界面,假设我们想要在应用代码的 Kernel 类中新增一个全局中间件,可以在输入框输入 middleware 跳转到到这个属性中进行设置:

PhpStorm导航的概述以及导航到类、接口、Trait的介绍  

 
PhpStorm导航的概述以及导航到类、接口、Trait的介绍  

该方法也适用于变量名的全局导航:

PhpStorm导航的概述以及导航到类、接口、Trait的介绍  

导航到指定的类/Trait成员方法或者独立的 PHP 函数也是在同一个操作界面操作,比如我们想要查看 Laravel 自带的分页方法底层是如何实现的,可以在输入框输入 paginate,然后选择我们想要查看的方法实现即可:

PhpStorm导航的概述以及导航到类、接口、Trait的介绍  

再比如,我们想要查看 Laravel 自带的 view 函数是如何实现的,在输入框输入 view 并选中要导航的方法即可:

PhpStorm导航的概述以及导航到类、接口、Trait的介绍  
 

跳转到行、列

最后,在已打开的当前文件中,可以通过 Command + L 打开行列导航操作界面,输入要导航到的行号、列号即可,其中行和列通过「行号:列号」进行区分和解析:

PhpStorm导航的概述以及导航到类、接口、Trait的介绍  

列号一般不设置,默认值为 1

在图形化 UI 界面中,通常跳转到指定行、列的需求不大,我们可以通过鼠标和触摸屏快速定位到指定位置。

 

汇总导航

针对类、文件、属性、方法的导航,除了通过上述方式使用各自独立的快捷键和操作界面进行导航外,在 PhpStorm 中,还可以通过 Shift + Shift 快捷键(连按两次 Shift 键)打开汇总导航操作界面(对应的功能叫做 Search Everywhere),一次输入,就可以全局匹配出所有相关的类、文件、属性、方法:

PhpStorm导航的概述以及导航到类、接口、Trait的介绍  

是不是非常方便?之所以叫做「Search Everywhere」,是因为除了这些导航功能之外,还可以通过 Actions 对 PhpStorm 系统设置进行快速定位(这个我们后面会单独介绍),换言之,你想要搜索的一切都可以通过这个输入框完成,也正因为这个原因,该功能对应的快捷键才能位于 PhpStorm 默认开机界面的榜首:

PhpStorm导航的概述以及导航到类、接口、Trait的介绍  

日常我们要做任何操作,不管是找文件、找代码,还是进行系统设置,都可以通过 Shift + Shift 呼出导航界面进行快速跳转,它会成为你日常使用 PhpStorm 最频繁的快捷键操作。

 

上下文导航

以上导航都是全局导航,如果是在某一段具体的代码片段中,我们想要进行上下文导航,以 User 模型类的 posts 方法为例:

public function posts()
{
    return $this->hasMany(Post::class, 'user_id');
}
 

如果我们想要查看 hasMany 方法对应的实现代码,可以按住 Command 键(Windows 下对应的是 Ctrl 键),然后鼠标/触摸屏点击 hasMany 方法,即可跳转到对应的方法实现代码:

PhpStorm导航的概述以及导航到类、接口、Trait的介绍    

“PhpStorm导航的概述以及导航到类、接口、Trait的介绍”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI