티스토리 뷰

앞글에서 XAMPP와 Eclipse, PDT설정에 이어
드디어 디버깅입니다.

1. XAMPP 설정하기.
디버깅은 Zend나 XDebug 둘 중 하나로만 가능 합니다.
두 개 다 쓸 수는 없다고 합니다.
여기서는 XDebug로 해 보겠습니다.

먼저 php.ini파일을 수정을 해야 합니다.
그냥.. 기본 설치를 하셨다면 C:\xampp\php\ 파일이 있을 겁니다.


[Zend]
;zend_extension_ts = "C:\xampp\php\zendOptimizer\lib\ZendExtensionManager.dll"
;zend_extension_manager.optimizer_ts = "C:\xampp\php\zendOptimizer\lib\Optimizer"
;zend_optimizer.enable_loader = 0
;zend_optimizer.optimization_level=15
;zend_optimizer.license_path =
; Local Variables:
; tab-width: 4
; End:

[XDebug]
;; Only Zend OR (!) XDebug
zend_extension_ts="C:\xampp\php\ext\php_xdebug.dll"
xdebug.remote_enable=true
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
xdebug.profiler_enable=1
xdebug.profiler_output_dir="C:\xampp\tmp"
[Zend] 영역은 앞에 ";"를 넣어 줘서 주석 처리를 합니다.
그리고 [XDebug]의 주석 처리 되어 있던 것의 주석을 모두 풀어 줍니다.

그리고 XAMPP의 서비스를 새로 시작합니다.
시작하는 방법은 바탕화면에 생긴 "XAMPP Control Panel"를 실행해서 Stop을 눌러 줬다가, Start를 눌러 주시면 됩니다.

설정이 잘 되었는지 확인하는 방법은
C:\xampp\htdocs 폴더에

<? phpinfo() ?>

내용의 파일을 만들어서 실행해 보면 됩니다.
아래와 같이 with Xdebug가 출력 되면 잘 설정이 된겁니다.

사용자 삽입 이미지


2. Eclipse 프로젝트 만들기.
먼저 프로젝트를 추가해 줍니다.
여기서는 C:\xampp\htdocs폴더에 debug라는 폴더를 만들어서 해 보겠습니다.
사용자 삽입 이미지
File > New > Project를 실행합니다.
사용자 삽입 이미지
PHP Project를 선택합니다.
사용자 삽입 이미지
디버그를 할 폴더를 선택하고 Finish버튼을 누릅니다.
사용자 삽입 이미지

그러면 친절하게도 PHP perspective로 바꿔 준다고 합니다. Yes를 누릅니다.

그리고 디버그를 할 파일을 하나 만듭니다.
사용자 삽입 이미지
전 위와 같이 입력하고.. for 옆을 더블 클릭해서 브레이크 포인트를 만들어 줍니다.


3. Debug 설정하기.
Windows > Preferences를 선택합니다.
사용자 삽입 이미지

PHP > PHP Servers에서 첫번째를 선택하면 Edit를 클릭합니다.
사용자 삽입 이미지
사용자 삽입 이미지

사용자 삽입 이미지
설정을 위와 같이 맞춥니다.

Run > Debug Confiurations를 선택합니다.
사용자 삽입 이미지
사용자 삽입 이미지
PHP Web Page > Server에서 PHP Debugger를 XDebug로 선택합니다.
그리고 디버깅할 파일을 선택합니다.
그리고 Apply를 누르고 Close를 눌러서 닫습니다.

사용자 삽입 이미지
이제 프로젝트 파일에서 디버그할 파일에서 오른쪽 버튼을 누르고, Debug As > PHP Web Page를 선택합니다.

사용자 삽입 이미지
그러면 또 한번 PHP Debug Perspective로 연다고 나오고 Yes를 누르면 디버그가 시작 됩니다.

사용자 삽입 이미지
아끼 for 문 앞에 브레이크 포인트가 걸렸습니다 아직 $i의 값이 설정이 되지 않아서 <Uninitialized>라고 나오는 군요.

여기서 부터는 F5, F6을 누르면서 진행 하시면 되고 다음 브레이크 포인트 까지 F8을 누르면 됩니다.
끝~


여기 까지 입니다...
댓글
  • 프로필사진 nona* 좋은정보 감사합니다. ^.^ 2009.06.17 14:13
  • 프로필사진 신규하 감사합니다. 2009.06.18 18:14 신고
  • 프로필사진 홍창수 저는 Debug As > PHP Web Page 선택후 Confirm Perspective Switch 창이 뜨지 않고 바로 웹브라우저에 떠버리네요.
    이클립스상에서는 별 반응이 없고, 브레이크 포인트 역시 말을 안듣습니다.
    2009.07.09 18:30
  • 프로필사진 신규하 웹브라우저가 뜨는건 맞습니다. 웹브라우저에서 돌아가고 Confirm Perspective Switch가 나오게 됩니다.
    혹시 아파치 세팅 잘 되었는지 확인 하셨나요?
    2009.07.09 19:58 신고
  • 프로필사진 홍창수 아파치를 잘 돌리고 있습니다.
    혹시 아파치 셋팅을 이클립스에서 별도로 해야 하는건가요?
    2009.07.10 02:10 신고
  • 프로필사진 신규하 아... 아파치에서 XDEBUG 세팅이 잘 되었나 질문 했던 겁니다. ^^;
    그리고 Run Configurations에서 Server Debugger가 XDebug로 맞춰져 있어야 합니다.
    보통은 Zend Debugger가 기본으로 되어 있습니다.
    2009.07.10 08:08 신고
  • 프로필사진 홍창수 xdebug 설치후에 <?php phpinfo(); ?> 확인해서 xdebug 항목이 있으면 설치 및 세팅이 잘 된거가요?
    아파치와 이클립스 재시작했고, xdebug 설치후 phpinfo에서 xdebug 항목도 확인했지만 여전히 Confirm Perspective Switch 창이 뜨지않고 웹브라우저만 뜨고 breakpoint에서 멈추지 않고 실행됩니다.
    좀 더 확인해야 할 부분이 있을까요?
    2009.07.15 14:55
  • 프로필사진 신규하 혹시 최신 갈리레오를 설치 하셨나요?
    프로젝트에서 Properties정보에서
    PHP Debug를 선택하시고
    Enable project specific settings
    를 켜 주세요..
    최신은 기본값으로 이게 꺼져 있네요 ^^;
    2009.07.15 17:25 신고
  • 프로필사진 홍창수 네~ Galileo 사용중입니다.
    신규하님께서 말씀하신대로 Enable project specific settings 체크를 했습니다. 그리고 아래에 Default Settings 부분에 PHP Debugger를 XDebug로 선택을 했고요.
    하지만 이전과 다를게 없습니다. ㅠ ㅠ
    2009.07.15 20:42 신고
  • 프로필사진 신규하 그러면...
    Window > Perference > General > Web Browser 를
    Use External Web Browser로 선택해 보세요..
    참고로 전 FireFox를 써서 FireFox로 선택해 줬습니다.
    이거 말고는 설명한 내용하고 다른게 안 보이네요 ^^;
    2009.07.16 06:58 신고
  • 프로필사진 신규하 http://robsnotebook.com/php_debugger_pdt_xdebug
    그리고 여기를 참고 하세요.
    2009.07.16 07:01 신고
  • 프로필사진 홍창수 완전 적극적으로 도와주시니.. 성공은 못했어도 너무 고맙습니다. =) 2009.07.16 15:17
  • 프로필사진 신규하 저두 잘 못 쓴게 있나 다시 살펴보는 좋은 기회가 되었습니다.
    감사합니다.
    2009.07.16 21:03 신고
  • 프로필사진 신규하 아~ 그리고 꼭 성공 하시길 바랍니다 ^^*
    그럼 좋은 하루 되세요,
    2009.07.16 21:03 신고
  • 프로필사진 강익 감사합니다 퍼갈게요 2011.04.21 10:41
댓글쓰기 폼