0

私たちには大規模なレガシー コードベースがあり、関数が定義されている場所を見つけようとするのは大変な作業です。幸いなことに、最新の IDE ではこれがカバーされています。ただし、明確ではないのは、ファイルが既に含まれている方法 (または、実際には含まれているかどうか) です。

私たちの古いスタイルのコードは、多くの場合、単一のファイルに関連する関数のグループを持ち、各関数にファイル名のプレフィックスを付けます (したがって、login_validate() は login.php に含まれます)。

example.php

<?php

require_once 'functions/login.php';
require_once 'functions/validate.php';
validate_something(); // Uses function defined in validate.php
echo user_login(), PHP_EOL; // user.php must have been included *somewhere* for this to work, but where?!

私の質問は、PHP ファイルをスキャンして、未解決の関数が原因で実行に失敗するファイルを教えてくれるツールはありますか?

注: PHP の組み込みリント チェッカー ( php -l) を使用しても、このケースは検出されません。

4

1 に答える 1

0

PhpStormは私がお勧めするものです。(一般的に、この用途だけではありません。)

これを使用すると、プロジェクト全体の検査を実行することで、これを正確に行うことができます。ツールバーメニューから:

Code > Run Inspection by Name

次に、検査の種類を尋ねるダイアログがポップアップ表示されます。入力しundefined functionてEnterキーを押します。次に、次のダイアログで、検査を実行するスコープを尋ねられます。これは、プロジェクト全体である可能性があります。

于 2012-10-15T15:26:09.067 に答える