Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/xdebug/xdebug
Xdebug — Step Debugger and Debugging Aid for PHP
https://github.com/xdebug/xdebug
Last synced: 28 days ago
JSON representation
Xdebug — Step Debugger and Debugging Aid for PHP
- Host: GitHub
- URL: https://github.com/xdebug/xdebug
- Owner: xdebug
- License: other
- Created: 2011-06-22T12:33:00.000Z (over 13 years ago)
- Default Branch: master
- Last Pushed: 2024-04-03T14:09:49.000Z (7 months ago)
- Last Synced: 2024-04-12T11:12:33.177Z (7 months ago)
- Language: PHP
- Homepage: https://xdebug.org
- Size: 10.3 MB
- Stars: 3,043
- Watchers: 128
- Forks: 556
- Open Issues: 9
-
Metadata Files:
- Readme: README.rst
- Contributing: CONTRIBUTING.rst
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- awesome-php - xDebug - A debug and profile tool for PHP. (Table of Contents / Debugging and Profiling)
- awesome-php-cn - xDebug - PHP的调试和配置工具. (目录 / 调试和性能分析 Debugging and Profiling)
- awesome-projects - xDebug - A debug and profile tool for PHP. (PHP / Debugging and Profiling)
- awesome-php - xDebug - A debug and profile tool for PHP. (Table of Contents / Debugging and Profiling)
README
Xdebug
======.. image:: https://github.com/xdebug/xdebug/workflows/Build/badge.svg
:target: https://github.com/xdebug/xdebug/actions?query=workflow%3ABuild
.. image:: https://ci.appveyor.com/api/projects/status/glp9xfsmt1p25nkn?svg=true
:target: https://ci.appveyor.com/project/derickr/xdebug
.. image:: https://circleci.com/gh/xdebug/xdebug/tree/master.svg?style=svg
:target: https://circleci.com/gh/xdebug/xdebug.. image:: https://raw.githubusercontent.com/vshymanskyy/StandWithUkraine/main/badges/StandWithUkraine.svg
:target: https://stand-with-ukraine.pp.ua/Xdebug is a debugging tool for PHP. It provides step-debugging and a whole
range of development helpers, such as stack traces, a code profiler, features to
dump the full execution of your script to a file, and more.|Repography logo| / Recent activity |Time period|
-----
|recent-activity_timeline| |recent-activity_prs| |recent-activity_words| |recent-activity_users|.. |Time period| image:: https://images.repography.com/0/xdebug/xdebug/recent-activity/ef1290ac5bfa674f07dcfa4f915ce6b3_badge.svg
:alt: Time period
:target: https://repography.com
.. |Repography logo| image:: https://images.repography.com/logo.svg
:alt: Repography logo
:target: https://repography.com
.. |recent-activity_timeline| image:: https://images.repography.com/0/xdebug/xdebug/recent-activity/ef1290ac5bfa674f07dcfa4f915ce6b3_timeline.svg
:alt: Timeline graph
:target: https://github.com/xdebug/xdebug/commits
.. |recent-activity_prs| image:: https://images.repography.com/0/xdebug/xdebug/recent-activity/ef1290ac5bfa674f07dcfa4f915ce6b3_prs.svg
:alt: Pull request status graph
:target: https://github.com/xdebug/xdebug/pulls
.. |recent-activity_words| image:: https://images.repography.com/0/xdebug/xdebug/recent-activity/ef1290ac5bfa674f07dcfa4f915ce6b3_words.svg
:alt: Trending topics
:target: https://github.com/xdebug/xdebug/commits
.. |recent-activity_users| image:: https://images.repography.com/0/xdebug/xdebug/recent-activity/ef1290ac5bfa674f07dcfa4f915ce6b3_users.svg
:alt: Top contributors
:target: https://github.com/xdebug/xdebug/graphs/contributorsRequirements
------------Xdebug requires a `supported version `_ of PHP. For
installation it requires the `pecl` tool (available through the `php-pear`
package), unless your Linux distribution has an Xdebug package (`php-xdebug`).Installation
------------On most Linux distributions you can install Xdebug through its package
manager. You can also compile from source with the `pecl` tool through `pecl
install xdebug`. The latter also works for MacOS as long as PHP is installed
with Homebrew.On Windows, you need to `download `_ a
binary. Use the `Wizard `_.Unless you have installed Xdebug with a package manager on Linux, you also
need to add the following line to your `php.ini` file, or create a new Xdebug
specific ini file `xdebug.ini` in the `conf.d` directory. In either case, it
needs the following line added::zend_extension=xdebug
For more extensive installation instructions, see the documentation at
https://xdebug.org/docs/installConfiguration
-------------Most features in Xdebug have to be opted in into. Each feature has a specific
opt-in. For example to use the `step debugger
`_ you need to set `xdebug.remote_enable=1` in
your configuration file. The step debugger requires an IDE (client), of which
there are many `available `_.The documentation has instructions for each of Xdebug's features:
https://xdebug.org/docs/ and a full list of `settings
`_ is also available there.Contributing
------------Xdebug is written in C, and extensive knowledge of PHP's internals is
necessary to be able to contribute. Contributing guidance is available
`separately `_.Before you begin to contribute, please reach out first. Either through email
(address at the bottom), an issue in the `issue tracker
`_ or preferably through IRC on Freenode's #xdebug
channel.Testing
-------If you are familiar with compiling PHP extension from source, have a local
checkout of Xdebug's GitHub repository, and have compiled Xdebug in that
directory following the instructions under `installation
`_ you can run Xdebug's tests by
running::php run-xdebug-tests.php
The test framework requires that the PHP binary on the path has Xdebug loaded,
with remote debugging enabled through `xdebug.mode=debug`. It is possible
to skip remote debugging tests by exporting the `SKIP_DBGP_TESTS=1` environment
variable.The `SKIP_UNPARALLEL_TESTS=1` can be used to skip tests that can not run in
parallel environments, and the `SKIP_SLOW_TESTS=1` environment variable to skip
slow tests. The `OPCACHE` environment variable can either be `yes` or `no` and
controls whether the test framework enables or disables OpCache.Licensing
---------Xdebug is released under `The Xdebug License
`_, which is based on
`The PHP License `_. It is
an Open Source license (though not explicitly endorsed by the Open Source
Initiative).Further Reading
---------------Xdebug has extensive documentation on its `website `_.
There are over a hundred settings and many functions documented. Please have a
look through the wealth of information that Xdebug can provide to make your
every day development with PHP easier.Support
-------For questions regarding Xdebug, please use `StackOverflow
`_, and tag your question
with `xdebug`.You can also find ad-hoc and sporadic support on IRC: ``freenode/#xdebug``.
You can do that with your favourite client, or by using their `webchat
`_.If you think that you encountered a bug, please file a detailed bug report
at https://bugs.xdebug.org. You are required to create an account, this is
so that you can be contacted for additional information and to keep out
spam.Derick Rethans — [email protected]