php 고급

Xdebug 오류 추적

오류 추적

xdebug는 오류가 발생했을 때 오류가 어떤 맥락에서 발생한 것인지를 추적해서 보여준다. 아래의 예제는 존재하지 않는 변수를 호출했을 때 이 오류가 어떤 맥락에서 발생했는가를 보여준다. 

<?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 : 지역변수의 리스트를 출력한다.

댓글

댓글 본문
작성자
비밀번호
  1. 쌈닭
    :D
버전 관리
egoing
현재 버전
선택 버전
graphittie 자세히 보기