07/09/2018, 10:40

PhpStorm Đi Đến Class Implement Interface

Trong source code bạn có một interface My_Interface và bạn muốn tìm kiếm tất cả các class implement interface trên. Làm thế nào để thực hiện công việc này? Cách Tìm Kiếm Đơn Giản Với một số IDE hoặc text editor khác thì cách làm thông thường sẽ là tìm kiếm cho từ khoá implements My_Interface. ...

Trong source code bạn có một interface My_Interface và bạn muốn tìm kiếm tất cả các class implement interface trên. Làm thế nào để thực hiện công việc này?

Cách Tìm Kiếm Đơn Giản

Với một số IDE hoặc text editor khác thì cách làm thông thường sẽ là tìm kiếm cho từ khoá implements My_Interface. Tuy nhiên cách làm trên sẽ bỏ sót trường hợp có một abstract class My_Abstract_Class implement My_Interface:

<?php
abstract class My_Abstract_Class implements My_Interface {

}

Và sau đó đồng thời có một class thông thường khác `My_Class`` kết thừa class này:

<?php
My_Class extends My_Abstract_Class {
// ...
}

Lúc này việc tìm kiếm cho từ khoá implements My_Interface sẽ bỏ sót class My_Class trên.

Sử Dụng PhpStorm

PhpStorm hỗ trợ việc tìm kiếm các class triển khai một interface như trường hợp đưa ra ở trên mà không bỏ sót bất cứ class nào. Để làm việc này bạn rê chuột lên trên tên của interface và nhấp chuột phải => chọn Go to => Chọn Implemetation:

PhpStorm - Goto Implementation

Ngoài ra bạn có thể sử dụng tổ hợp phím tắt Ctrl + Alt + B đối với Windows hoặc Linix Hoặc Cmd + Alt + B đối với Mac OSX:

PhpStorm - Goto Implementation Phím Tắt

Lúc này như bạn thấy ở hình trên PhpStorm sẽ hiển thị tất cả các class implement My_Interface trực tiếp và cả những class implement My_Interface gián tiếp thông qua việc kết thức một class khác.

0