Xdebug with PHP is a lifesaver

I have no idea how I managed to program in PHP for years without Xdebug. Now when an error occurs, it just pops up in my IDE, and I can set breakpoints and see ALL of the local variables including the ones set in the higher up scripts. It makes debugging sooooo much easier.

I feel kind of silly for not assuming a tool like this existed and hunting for it. I'll never write a var_debug() again. I wonder what other absolutely vital tools are out there that I'm just completely oblivious to.

22 points · 7 comments · view on lemmy.world

7 Comments

Vince@lemmy.world · 3 pts · 2y (2 replies)

Lol, I have my favorite file_put_contents line for debugging php, but being able to step through code would be great. What's your setup? Last time I tried I couldn't get xdebug working on win server + apache.

Obscerno@lemm.ee · 5 pts · 2y (1 reply)

I'm on Ubuntu, but from what I remember to get it working in my local environment I just:

  • Installed the module.
  • Added the following to the php.ini file:
    [xdebug]
    zend_extension=xdebug
    xdebug.mode = debug
    xdebug.start_with_request = yes
  • Restarted the apache server.
  • Installed the PHP Debug extension for Visual Studio Code.

And now I just hit F5 and select "Listen for Xdebug" and I'm ready to go.

Sigmatics@lemmy.ca · 2 pts · 2y

You just saved thousands of php developers' lives

dotslashme@infosec.pub · 3 pts · 2y (2 replies)

Just wait until you learn that you can debug sql queries the same way in most rdbms admin tools.

Obscerno@lemm.ee · 2 pts · 2y (1 reply)

WHAT?

TheCee@programming.dev · 5 pts · 2y

Just wait until you learn that debuggers for XSLT exists. Wait, that's no reason to smile.

kroy@lemmy.world · 1 pts · 2y

I think part of the responsibility when you pick up a new language is understanding the framework and tools. Look at existing projects, see how they are doing things, check out a few IDEs, etc.

I dunno, I end up learning new languages to at least a junior dev level multiple times a year, and the tools and frameworks are the first thing I look at. It really seems to help me grasp the just of the language much quicker.