V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
SaintSeiya
V2EX  ›  PHP

求教 PHP 断点调试的正确姿势

  •  
  •   SaintSeiya · 2019-04-20 10:12:08 +08:00 · 6173 次点击
    这是一个创建于 2078 天前的主题,其中的信息可能已经有所发展或是发生改变。
    IDE 是 PHPSTORM,用了 Xdebug,感觉不是很清爽,要安装浏览器 debug 插件,或是 cookie 中带上 XDEBUG_SESSION,不知道是不是我配置的有问题。有没有什么方法能让别人访问我的地址,不需要任何多余配置,我这边也可以在 IDE 中断点调试。
    23 条回复    2020-02-29 19:29:52 +08:00
    mchong
        1
    mchong  
       2019-04-20 10:46:52 +08:00   ❤️ 1
    xdebug.remote_autostart = 1
    坏处是任何请求都会启动 debug 请求。
    MrLin
        2
    MrLin  
       2019-04-20 10:51:30 +08:00
    var_dump
    luanguang
        3
    luanguang  
       2019-04-20 10:55:59 +08:00
    var_dump +1
    goodspb
        4
    goodspb  
       2019-04-20 11:40:45 +08:00
    Java ?
    RudyC
        5
    RudyC  
       2019-04-20 12:13:53 +08:00
    1 楼正解
    zjsxwc
        6
    zjsxwc  
       2019-04-20 12:17:24 +08:00
    基本上服务端程序,打 log 调试才是主流,

    只有 GUI 交互应用比如网页、桌面程序、手机 App 等才会有“断点调试”。
    askfilm
        7
    askfilm  
       2019-04-20 13:15:38 +08:00   ❤️ 1
    @SaintSeiya symfony/var-dumper
    BigPig666
        8
    BigPig666  
       2019-04-20 14:33:35 +08:00
    dump
    gabezhao
        9
    gabezhao  
       2019-04-20 15:49:54 +08:00
    var_dump +1
    qsbaq
        10
    qsbaq  
       2019-04-20 15:53:50 +08:00
    var_dump +1
    logan66
        11
    logan66  
       2019-04-20 16:46:50 +08:00 via iPhone   ❤️ 1
    postman 调接口,链接带上?XDEBUG_SESSION_START=PHPSTORM(你自己定义的 idekey),服务商的 php.ini 配置设置 xdebug.remote_connect_back = 1
    sandersyao
        12
    sandersyao  
       2019-04-20 18:31:54 +08:00
    本 vim 党员坚持 error_log
    feiffy
        13
    feiffy  
       2019-04-20 20:31:17 +08:00   ❤️ 1
    以前我也用 xdebug 调试,但是现在如果 laravel 框架的话直接 dd 或 dump 就好,其他 var_dump 或 print_r(显示更简洁一点)
    dvaknheo
        14
    dvaknheo  
       2019-04-21 00:11:47 +08:00   ❤️ 2
    debug_print_backtrace()
    mio4
        15
    mio4  
       2019-04-21 00:59:34 +08:00   ❤️ 1
    1. 使用 var_dump
    2. LNMP/WAMP 环境下 PHPStorm + XDebug + Postman,不需要安装 Chrome 插件
    MonoLogueChi
        16
    MonoLogueChi  
       2019-04-21 01:50:18 +08:00 via Android   ❤️ 1
    @zjsxwc 断点方便啊,我拿 .net core 写 API 的时候,打断点调试,参数变量一目了然,但是用日志分析的话,日志里只有你主动输出的信息,而且还要主动去写日志
    UFc8704I4Bv63gy2
        17
    UFc8704I4Bv63gy2  
       2019-04-21 11:59:45 +08:00 via Android   ❤️ 1
    komodoide+xdebug,已经没有很好的可以推荐给您了
    sandersyao
        18
    sandersyao  
       2019-04-22 22:08:14 +08:00
    @dvaknheo 这个的确太经典了 相应的还有 debug_backtrace() 框架里一般不敢用
    Sakura10032
        19
    Sakura10032  
       2019-04-26 12:04:28 +08:00 via Android
    别问,问就 var_dump
    baiban
        20
    baiban  
       2019-04-28 20:07:20 +08:00
    var_dump 比啥都好使
    AbrahamGreyson
        21
    AbrahamGreyson  
       2019-04-29 10:19:56 +08:00 via iPhone
    有些复杂对象调试其属性 dump 根本没啥用啊,更别提单步步进,步入这种基本的调试功能,每一步变量如何变化的。

    别听他们的
    RickyWonng
        22
    RickyWonng  
       2019-05-06 10:20:00 +08:00
    体验最好的方案是 xdebug + phpstorm + komodo dbgp proxy,搭建方法 jetbrains 家官网有教程。用了这么多年体验最好的方案了
    mitu9527
        23
    mitu9527  
       2020-02-29 19:29:52 +08:00
    @RickyWonng 请教一下,xdebug + phpstorm 我明白,但 komodo dbgp proxy 主要是解决调试时的什么问题,能说一下么?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2050 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 00:02 · PVG 08:02 · LAX 16:02 · JFK 19:02
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.