Difference between revisions of "PHP/IDE"

from HTYP, the free directory anyone can edit if they can prove to me that they're not a spambot
< PHP
Jump to navigation Jump to search
Line 6: Line 6:
 
* [http://xdebug.org/ XDebug]: Debugger and Profiler Tool for PHP
 
* [http://xdebug.org/ XDebug]: Debugger and Profiler Tool for PHP
 
** [http://xdebug.org/docs/install Installation]
 
** [http://xdebug.org/docs/install Installation]
 +
===Language Server Protocol (LSP)===
 +
It's not clear whether LSP is any help with interactive debugging; it seems primarily aimed at editing.
 +
* [https://langserver.org/ langserver.org] is "A community-driven source of knowledge for Language Server Protocol implementations", including several for PHP.
 +
** [https://github.com/bmewburn/intelephense-docs/blob/master/installation.md intelephense] ticks the most boxes; not sure how to make it work, though
 +
** [https://github.com/felixfbecker/php-language-server php-language-server] seems more thoroughly documented (shows graphically what it can do), and might be easier to install

Revision as of 13:06, 30 October 2021

Notes

Apparently PHP is capable of being interactively debugged in an IDE, using only FOSS software. I'm still researching this. Apparently there are a number of front-ends (IDEs) which support the necessary protocol, including KDevelop, and there's at least one plug-in on the back-end.

It may be necessary to run PHP and the IDE on the same machine.

  • phpdbg - function library. There is a page for each function, but not a lot of examples or overall explanation of how to make it work.
  • XDebug: Debugger and Profiler Tool for PHP

Language Server Protocol (LSP)

It's not clear whether LSP is any help with interactive debugging; it seems primarily aimed at editing.

  • langserver.org is "A community-driven source of knowledge for Language Server Protocol implementations", including several for PHP.
    • intelephense ticks the most boxes; not sure how to make it work, though
    • php-language-server seems more thoroughly documented (shows graphically what it can do), and might be easier to install