>  기사  >  개발 도구  >  phpstorm 디버그 도구 yasd에 대한 자세한 소개(사용하기 매우 쉽습니다)

phpstorm 디버그 도구 yasd에 대한 자세한 소개(사용하기 매우 쉽습니다)

WBOY
WBOY앞으로
2022-01-17 15:33:155595검색

이 기사에서는 매우 사용하기 쉬운 phpstorm 디버그 도구를 제공합니다. 일반적으로 개발 중에 누군가가 디버깅을 위해 xdebug 확장 프로그램을 설치하고 phpstorm에서 xdebug를 구성하도록 선택할 수 있습니다.

phpstorm 디버그 도구 yasd에 대한 자세한 소개(사용하기 매우 쉽습니다)

보통 개발 중에는 디버깅이 필요할 때가 항상 있습니다. var_dump 및 die와 같은 수동 중단 방법은 항상 시간이 많이 걸리고 노동 집약적이며 이때 누군가가 xdebug를 설치하도록 선택할 수 있습니다. 확장명. phpstorm에서 디버그를 위해 xdebug를 구성합니다.

그러나 swoole 프레임워크를 사용하고 swoole 프레임워크에서 코드를 디버그해야 하는 경우 xdebug는 swoole에서 사용할 수 없으며 swoole과 충돌합니다.

그런 다음 fpm 프레임워크 및 swoole 프레임워크와 호환되는 비교적 사용하기 쉬운 디버깅 도구인 yasd를 찾았습니다.

2 Github

brew install boost

3에서 yasd 소스 코드를 다운로드합니다. yasd를 설치하세요

git clone https://github.com/swoole/yasd.git

4. php.ini

cd yasd
phpize --clean && \
phpize && \
./configure && \
make clean && \
make && \
make install

수정 정보 보기

zend_extension="yasd.so"
;命令行调试
;yasd.debug_mode=cmd
;远程调试
yasd.debug_mode=remote
;本地开发地址
yasd.remote_host=127.0.0.1
;本地开发监听端口
yasd.remote_port=9000
5 스크립트를 디버그하려면 yasd를 사용하세요. 다음을 추가해야 합니다. phpstorm을 구성하세요. 모니터링 시작

3. 테스트 디버깅

Laravel에서 테스트 명령 작성

➜  yasd php --ri yasd
yasd
Yasd => enabled
Author => codinghuang <codinghuang@qq.com>
Version => 0.3.9-alpha
Built => Jan 15 2022 14:09:47
Directive => Local Value => Master Value
yasd.breakpoints_file => no value => no value
yasd.debug_mode => remote => remote
yasd.remote_host => 127.0.0.1 => 127.0.0.1
yasd.remote_port => 9000 => 9000
yasd.depth => 1 => 1
yasd.log_level => -1 => -1
yasd.max_executed_opline_num => 0 => 0
yasd.init_file => no value => no value
yasd.open_extended_info => 0 => 0
xdebug.coverage_enable => 1 => 1
xdebug.profiler_enable => 1 => 1
xdebug.remote_autostart => 1 => 1
xdebug.remote_connect_back => 0 => 0
xdebug.remote_mode => req => req
xdebug.idekey => hantaohuang => hantaohuang
여기서 성공했습니다

Hyperf 프레임워크 디버깅위에 언급된 디버깅은 fpm. 다음으로 Hyperf 프레임워크에서 디버깅하는 방법에 대해 이야기하겠습니다

주의 사항1. Hyperf에서 사용하려면 config.php의 scan_cacheable 매개변수를 true로 설정해야 합니다. 이 매개변수는 프록시 클래스를 스캔할지 여부입니다. . true로 설정하면 프록시 클래스를 다시 검색하고 생성하는 대신 캐시 프록시 클래스가 시작될 때마다 직접 검색됩니다.

true로 설정한 후에는 코드를 수정할 때마다 프록시 클래스인 Composer dump-autoload -o를 수동으로 생성한 후 시작해야 한다는 점에 유의하세요. phpstorm 디버그 도구 yasd에 대한 자세한 소개(사용하기 매우 쉽습니다)

또는 프록시 클래스에서 직접 코드를 수정하세요. 디버깅이 완료되면 프록시 클래스의 코드를 실제 클래스에 복사하세요.

프록시 클래스 생성 경로는 Runtime/container/proxy

2입니다. Swoole Server가 Hyperf 프레임워크에서 사용되는 경우 Worker_num을 1로 설정해야 하며, 그렇지 않으면 중단점이 적용되지 않을 수 있습니다. 이 매개변수는 server.php에 있습니다.

phpstorm 디버그 도구 yasd에 대한 자세한 소개(사용하기 매우 쉽습니다)남은 디버깅은 위에서 언급한 내용과 다르지 않습니다.

추천 학습: "phpstorm 튜토리얼"

위 내용은 phpstorm 디버그 도구 yasd에 대한 자세한 소개(사용하기 매우 쉽습니다)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 learnku.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제