xDebugのインストール

xDebugのインストール

xDebugとは?

  1. 公式サイト:https://xdebug.org
  2. PHPのデバッグお助けソフト
  3. remiリポジトリに配置されている。もちろん他もあるかもしれない。
  4. PHP のコア開発者である Derick Rethans 氏が開発している、PHP のデバッグ用エクステンション(拡張機能)

xDebugをインストールするメリット

var_dump の機能が拡張される

xDebugをインストールしていないvar_dump

xDebugを有効にした場合

  • ファイル名と行数が表示される。
  • パラメータが色分けされている。
  • sizeとlengthが表示される。

デバッグ機能拡張 (リモートデバッグができる)

[PHP] Xdebug のリモートデバッグ、理解していますか?

PhpStormからリモートデバッグする

  1. ブレークポイントを設定して処理を止めることができる
  2. 変数の値を確認しながら処理を進めることができる

スタックトレース表示の拡張

vim /etc/php.ini

display_errors = On

systemctl restart httpd

ローカル変数の表示させる場合
xdebug.show_local_vars = 1

グローバル変数のダンプさせる場合
xdebug.dump_globals = 1;
xdebug.dump.SERVER = QUERY_STRING, REQUEST_URI;

$_SERVER の全てのエントリを表示する場合
xdebug.dump_globals = 1
xdebug.dump.SERVER = *

例外発生時のスタックトレース表示させる場合
xdebug.show_exception_trace = 1;

トレースログの出力

プロファイリング

コードカバレッジ統計情報の生成

インストールする環境

OS

[root@mail yum.repos.d]# cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)
[root@mail yum.repos.d]#

PHP

[root@mail yum.repos.d]# php -v
PHP 7.3.4 (cli) (built: Apr 2 2019 13:48:50) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.4, Copyright (c) 1998-2018 Zend Technologies
[root@mail yum.repos.d]#

インストールコマンド

yum --enablerepo=remi-php73 install php-pecl-xdebug

パッケージ確認

[root@mail yum.repos.d]#
[root@mail yum.repos.d]# rpm -qa | grep xdebug
php-pecl-xdebug-2.7.2-2.el7.remi.7.3.x86_64
[root@mail yum.repos.d]#
[root@mail yum.repos.d]#
[root@mail yum.repos.d]# yum list | grep xdebug
php-pecl-xdebug.x86_64 2.7.2-2.el7.remi.7.3 @remi-php73
[root@mail yum.repos.d]#
[root@mail yum.repos.d]#

xDebugのバージョン確認

[root@mail yum.repos.d]#
[root@mail yum.repos.d]# php -v
PHP 7.3.4 (cli) (built: Apr 2 2019 13:48:50) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.4, Copyright (c) 1998-2018 Zend Technologies
with Xdebug v2.7.2, Copyright (c) 2002-2019, by Derick Rethans
[root@mail yum.repos.d]#
[root@mail yum.repos.d]#

※最新バージョンの確認は公式サイトから確認する。

設定ファイル

※PHP 5.3以降では、zend_extensionのみを使用する必要があります。zend_extension_ts , zend_extension_debugまたは extensionは使用しないでください。

PHP情報を確認

php -i

xDebugの設定ファイル

[root@mail php.d]# vim /etc/php.d/15-xdebug.ini

読み込まれているモジュールの確認

php -m | grep xdebug

設定ファイルの反映

[root@mail yum.repos.d]# systemctl restart httpd

 

 

 

 

スポンサーリンク
おすすめの記事