오류 추적
xdebug는 오류가 발생했을 때 오류가 어떤 맥락에서 발생한 것인지를 추적해서 보여준다. 아래의 예제는 존재하지 않는 변수를 호출했을 때 이 오류가 어떤 맥락에서 발생했는가를 보여준다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | <?php ini_set ( 'xdebug.collect_params' , '4' ); ini_set ( 'xdebug.dump.GET' , '*' ); ini_set ( 'xdebug.dump.SERVER' , 'REQUEST_URI' ); ini_set ( 'xdebug.show_local_vars' , 'on' ); function a( $_a ){ echo $d ; return $_a ; } function b( $_b ){ return a( $_b ); } function c( $_c ){ return b( $_c ); } print_r(c( array ( 'param' => 'test' ))); ?> |
위의 코드는 아래의 결과를 출력한다.
설정 값들은 아래와 같은 의미를 갖는다. 자세한 내용은 다음 링크를 참조한다.
http://xdebug.org/docs/all_settings
- xdebug.collect_params : 함수로 전달된 인자를 얼마나 디테일하게 표현할 것인지를 지정한다. 1부터 4까지 값을 지정할 수 있고 값이 높을수록 더 자세한 정보를 제공한다.
- xdebug.dump.GET : GET 방식으로 전달된 값을 출력한다.
- xdebug.show_local_vars : 지역변수의 리스트를 출력한다.