Home  >  Article  >  Backend Development  >  Compilation, installation and configuration instructions for php xdebug

Compilation, installation and configuration instructions for php xdebug

WBOY
WBOYOriginal
2016-08-08 09:32:161080browse

Today a PHP student asked me about the Xdebug extension of PHP, so I re-wrote this note. In fact, this installation configuration is very simple. Taking into account the understanding of novices, it is equipped with more detailed pictures and actual simulation operation steps. Just skip it

First open the Linux terminal and execute the command git clone git://github.com/xdebug/xdebug.git Download the xdebug expansion package, as shown below: (If you don’t have git, please install git first)


Then execute the following command to switch to the xdebug file package directory
[Happy@localhost www]$ cd xdebug
Execute the phpize command in the xdebug directory (replace it with the path of the phpize file in your actual PHP installation path)
[Happy@ localhost xdebug]$ /usr/local/php/bin/phpize (The execution result is as shown below, you can see the version date of php, etc.)

Compile the xdebug expansion package
[Happy@localhost xdebug]$ ./configure -- with-php-config=/usr/local/php/bin/php-config
[Happy@localhost xdebug]$ make (The following message appears as shown in the picture, indicating that the make is successful)

Then execute the last step of make install completes the installation
[Happy@localhost xdebug]$ make install
The appearance as shown in the picture indicates that the installation is successful and the directory location of the php extension is displayed

At this time, you can view the extension directory to see that the xdebug.soextension file has been Install to the PHP extension directory

Configure the PHP.INI file to add the XDEBUG extension
[Xdebug]
zend_extension="/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/xdebug. so"
xdebug.remote_enable = true
xdebug.remote_host = localhost
#default port 9000
#xdebug.remote_port = 9000
xdebug.profiler_enable = on
xdebug.t race_output_dir = "/var/www/phpxdebug"
xdebug.profiler_output_dir = "/var/www/phpxdebug"
xdebug.auto_trace = On
xdebug.show_exception_trace = On
xdebug.remote_autostart = On
xdebug.collect_vars = On
xdebug.collect_return = On
xdebug .remote_handler =dbgp
xdebug.max_nesting_level = 10000
After modifying the php.ini configuration parameters, call the phpinfo() function on the PHP page to see the extended information and related parameter options of Xdebug on the page. My settings here are as shown in the figure:

php xdebug 参数说明(更多问题请参见 摘取天上星 之前关于xdebug的日志)

zend_extension = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so" #加载扩展文件 xdebug.remote_enable = true xdebug.remote_host = localhost #xdebug.remote_port = 9000 #默认端口 9000 xdebug.profiler_enable = on xdebug.trace_output_dir = "/var/www/phpxdebug" xdebug.profiler_output_dir = "/var/www/phpxdebug" #其余参数 #开启自动跟踪 xdebug.auto_trace = On #开启异常跟踪 xdebug.show_exception_trace = On #开启远程调试自动启动 xdebug.remote_autostart = On #收集变量 xdebug.collect_vars = On #收集返回值 xdebug.collect_return = On #用于zend studio远程调试的应用层通信协议 xdebug.remote_handler =dbgp #如果设得太小,函数中有递归调用自身次数太多时会报超过最大嵌套数错 xdebug.max_nesting_level = 10000 zend_extension = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/xdebug.so"Xdebug loading method, Different systems and PHP versions have different writing methods Linux and Mac OS -Safe version of PHP: zend_extension_ts = "D:phpextxdebug.dll"Windows Non
-Thread-Safe version of PHP: zend_extension = "D:phpextxdebug.dll"So the same server can only load one debugging tool, either Zend Debugger or Xdebug But when tested in the PHP5.5 environment, the Thread-Safe version of PHP cannot add _ts after it and can only write zend_extension = xdebug.remote_enable = true to allow remote IDE debugging xdebug.profiler_enable = on and the following directories" /var/www/phpxdebug" is used to enable the function of writing execution analysis files to the specified directory, which can be set freely. You can also not write the generated file, such as cachegrind.out.4408. If you open a file named in this format with an editor, you can see a lot of details about the running of the program The above introduces the compilation, installation and configuration instructions of php xdebug, including the relevant content. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn