SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 社員募集 ...

【php】Xdebug プロファイルの利用

問題

phpスクリプトの実行が遅い。どこが遅いか調べたい。

php

メモ

どこが遅いのか知りたいので、Xdebugのprofilerを利用しました。

(以下、Xdebugの使える環境にて)

まず、xdebugの設定をする。.htaccess ファイルで設定するなら以下のように下記の三行を追加する。

php_value xdebug.profiler_enable 1
php_value xdebug.profiler_output_dir /path/to/プロファイル/出力先を指定
php_value xdebug.profiler_output_name hoge.out.%s

次に、通常通りに調べたい処理を実行する。

すると、上で設定したディレクトリにプロファイルファイルがいくつか出てくるはず。

プロファイルのファイル名の設定を、「hoge.out.」の後ろにphpのファイル名をつけるようにしているので、以下のようなファイルで生成される。

例) hoge.out._home_apache_xxxx_yyyy_zzzz_php

後は、winCacheGrindというソフトでこのファイルを解析すると、下のような画面が表示される。

スクリプトのどのあたりに実行時間がかかっているのかがわかる。

xdebug

関連するメモ

コメント