xdebug

{{short description|PHP extension used for debugging and profiling}}

{{Infobox software

| name = Xdebug

| logo = Xdebug Logo.svg

| screenshot = Wikimedia Commons fatal error allowed memory size exhausted.png

| caption = An Xdebug error message on Wikimedia Commons

| collapsible =

| author =

| developer = Derick Rethans

| released = {{Start date|2002|05|08}}{{cite web |last1=Rethans |first1=Derick |title=Release version 0.7.0 |url=https://github.com/xdebug/xdebug/commit/0a74080d50f6d95ed2ba1a9287bd1318d582cffa |website=github |access-date=16 May 2020}}

| programming language = C

| operating system =

| platform =

| size =

| language = English

| genre = Debugger

| license = Permissive license, derived from the MIT license

| website = {{URL|https://xdebug.org}}

| latest release version = 3.2.1

| latest release date = {{Start date and age|2023|03|21}}

}}

File:Compd 002 xdebug.svg component diagram for Xdebug and PHP, integrated via the browser and an IDE]]

Xdebug is a PHP extension which provides debugging and profiling capabilities.{{cite book

| last = McArthur

| first = Kevin

| title = Pro PHP: Patterns, Frameworks, Testing and More

| url = https://archive.org/details/prophppatternsfr00mcar_909

| url-access = limited

| date = 2008-03-24

| publisher = Apress

| location = New York City, New York

| isbn = 978-1-59059-819-1

| pages = [https://archive.org/details/prophppatternsfr00mcar_909/page/n11 120] – 124

| chapter = Testing, Development, and Continuous Integration

}} It uses the DBGp debugging protocol.

The debug information that Xdebug can provide includes the following:

  • stack and function traces in error messages{{cite book

| last1 = Sklar

| first1 = David

| last2 = Trachtenberg

| first2 = Adam

| title = PHP Cookbook

| edition = 2nd

| date = 2009-05-11

| publisher = O'Reilly Media

| location = Sebastopol, CA

| isbn = 978-0-596-10101-5

| page = 618 – 619

| chapter = Error Handling, Debugging, and Testing

}} with:

:*full parameter display for user defined functions

:*function name, file name and line indications

:*support for member functions

Xdebug also provides:

  • profiling information for PHP scripts{{cite book |last = Henderson

|first = Cal

|title = Building Scalable Web Sites

|chapter-url = https://archive.org/details/buildingscalable0000hend/page/170

|chapter-url-access = registration

|date = 2006-05-16

|publisher = O'Reilly Media

|location = Sebastopol, CA

|isbn = 0-596-10235-6

|pages = [https://archive.org/details/buildingscalable0000hend/page/170 170 – 171]

|chapter = Bottlenecks

}}

  • code coverage analysis
  • capabilities to debug your scripts interactively with a debugger front-end.{{cite book

| last1 = Masters

| first1 = Jon

| last2 = Blum

| first2 = Richard

| title = Professional Linux Programming

| date = 2007-03-12

| publisher = John Wiley & Sons

| location = Hoboken, New Jersey

| isbn = 978-0-471-77613-0

| page = 426

| chapter = LAMP

}}

Xdebug is also available via the PECL.{{cite book

| last1 = Gerner

| first1 = Jason

| last2 = Naramore

| first2 = Elizabeth

| last3 = Owens

| first3 = Morgan L.

| last4 = Warden

| first4 = Matt

| editor-last = Gerner

| editor-first = Jason

| title = Professional LAMP: Linux, Apache, MySQL and PHP Web Development

| url = https://archive.org/details/professionallamp00gern_474

| url-access = limited

| date = 2005-12-05

| publisher = John Wiley & Sons

| location = Hoboken, New Jersey

| isbn = 0-7645-9723-X

| page = [https://archive.org/details/professionallamp00gern_474/page/n223 197]

| chapter = PEAR and PECL

}}

See also

{{Portal|Free and open-source software}}

References

{{Reflist}}