2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

ソース内検索を少しだけ楽にするライフハック for PHP

2
Posted at

地味に便利なものの見方。

ブラウザでgithubやQiitaを見た場合のページ内検索でも応用できます。
早速、"n hogehuga"や"s hogehuga"で検索してみましょう。

結論

対象となる文字列や行の"文字列としてのフォーマット"を意識して分解すると、簡単に絞り込み出来るようになる。

関数、メソッド定義を探す場合

頭に"n "を付けて探す。

function hogehuga()
{
}

// 使用箇所にはマッチしない。
hogehuag();

// "n hogehuga"で検索すれば一発で定義箇所にマッチする。

クラス定義を探す場合

頭に"s "を付けて探す。

class Hogehuga
{
}

// 使用箇所にはマッチしない。
$hogehuga = new Hogehuga;

// "s Hogehuga"で検索すれば一発で定義箇所にマッチする。

余談

次のコーディングスタイルを取ると定義箇所と使用箇所の切り分けが簡単にできるようになる。
具体的にはgrepで使用箇所一覧を作る際に極めて強力な状況を作り出せる。
但し、現在はPSR-2が主流なためあまり使える機会は無いと考えられる。

関数、メソッドを探す場合

頭に"n "を付けて探す。

// 定義では関数名とパーレンの間にスペースを入れる。
function hogehuga () {
}

// 使用時は関数名とパーレンの間にスペースを入れない
hogehuga();

このようにすると、"n hogehuga ("で検索すれば定義箇所が、"hogehuga("で検索すれば使用箇所を綺麗に特定できる。

クラスを探す場合

// 定義ではブレス前の改行を行わず、スペースを入れる
class Hogehuga {
}

// 使用時はクラス名の後にスペースを入れない
$hogehuga = new Hogehuga;
$hogehuga = new Hogehuga();

このようにすると、"s Hogehuga "で検索すれば定義箇所が、"w Hogehuga"で検索すれば使用箇所を綺麗に特定できる。
ブレスの前にスペースを入れる事により、以降にextendsやimplementsが続いても変わらずマッチするようになる。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?