Debugging technology is an indispensable and important part of our programming, and the debugger is a necessary component of every IDE environment. In this case, it is a matter of course that the integrated environment of Zend Studio has a debugger. However, when the debugger is configured and used, its powerful functions will definitely amaze you!
In fact, the debugging function of Zend Studio (hereinafter referred to as ZDE) is divided into internal debugging and remote debugging. Internal debugging is preliminary code debugging using ZDE's built-in PHP (available in versions 4 and 5). We focus on remote debugging because it can completely simulate a real operating environment.
Remote debugging requires server-side component support. Our content today is how to install this server-side debugging environment. The debugging component used is Zend Debugger, which is light and useful. At the time of writing this article, Its latest version is 5.2.14, which is slightly updated with the 5.2.10 version widely circulated on the Internet. My server is apache under windows, so I downloaded the windows version of Zend Debugger. The compressed package is about 2.1M and has a readme.txt. I think it is necessary to read it:
<ol class="dp-xml"> <li class="alt"><span><span>Zend Debugger installation instructions </span></span></li> <li><span>————————————— </span></li> <li class="alt"><span>1. Locate ZendDebugger.so or ZendDebugger.dll file that is compiled for the correct version of PHP </span></li> <li><span>(4.3.x, 4.4.x, 5.0.x, 5.1.x, 5.2.x) in theappropriate directory. </span></li> <li class="alt"><span> </span></li> <li><span>2. Add the following line to the php.ini file: </span></li> <li class="alt"> <span>Linux and Mac OS X: </span><span class="attribute">zend_extension</span><span>=/full/path/to/ZendDebugger.so </span> </li> <li> <span>Windows: </span><span class="attribute">zend_extension_ts</span><span>=/full/path/to/ZendDebugger.dll </span> </li> <li class="alt"> <span>Windows non-tread safe: </span><span class="attribute">zend_extension</span><span>=/full/path/to/ZendDebugger.dll </span> </li> <li><span>(*) the windows non-thread safe is used only with Zend Core 2.0 </span></li> <li class="alt"><span> </span></li> <li><span>3. Add the following lines to the php.ini file: </span></li> <li class="alt"> <span class="attribute">zend_debugger.allow_hosts</span><span>=</span><span class="tag"><</span><span class="tag-name">ip_addresses</span><span class="tag">></span><span> </span> </li> <li> <span class="attribute">zend_debugger.expose_remotely</span><span>=</span><span class="attribute-value">always</span><span> </span> </li> <li class="alt"><span> </span></li> <li><span>4. Place dummy.php file in the document root directory. </span></li> <li class="alt"><span> </span></li> <li><span>5. Restart web server. </span></li> <li> </li> </ol>
The installation method has been described in great detail here, so I will describe it again in my obscure language. The following is a list of all files in the compressed package:
<ol class="dp-xml"> <li class="alt"><span><span>ZendDebugger-5.2.14RC9-cygwin_nt-i386md5 </span></span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i386Inventory.xml </span></li> <li class="alt"><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3864_3_x_comp </span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3864_3_x_compZendDebugger.dll </span></li> <li class="alt"><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3864_4_x_comp </span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3864_4_x_compZendDebugger.dll </span></li> <li class="alt"><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_0_x_comp </span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_0_x_compZendDebugger.dll </span></li> <li class="alt"><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_1_x_comp </span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_1_x_compZendDebugger.dll </span></li> <li class="alt"><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_2_x_comp </span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_2_x_compZendDebugger.dll </span></li> <li class="alt"><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_2_x_nts_comp </span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i3865_2_x_nts_compZendDebugger.dll </span></li> <li class="alt"><span>ZendDebugger-5.2.14RC9-cygwin_nt-i386dummy.php </span></li> <li><span>ZendDebugger-5.2.14RC9-cygwin_nt-i386README.txt </span></li> <li> </li> </ol>
Unzip the appropriate one, which is The Zend Debugger version corresponding to your current PHP version. My PHP version is 5.2.5, so I dragged out 5_2_x_comp (as for 5_2_x_nts_comp refers to non-tread safe, I don’t understand the specific use, so I won’t assume (used), I moved 5_2_x_compZendDebugger.dll to D:myserverZendDebugger5_2_xZendDebugger.dll, and decompressed dummy.php in the compressed package to the web root directory. The DocumentRoot of my apache here is set to D:/myserver/wwwroot, so I copied dummy. php to D:myserverwwwroot, then modify php.ini and add these contents:
<ol class="dp-xml"> <li class="alt"><span><span class="attribute">zend_extension_ts</span><span>=</span><span class="attribute-value">D</span><span>:/myserver/ZendDebugger/5_2_x/ZendDebugger.dll </span></span></li> <li> <span class="attribute">zend_debugger.allow_hosts</span><span>=</span><span class="attribute-value">127</span><span>.0.0.1/32,192.168.1.88/24 </span> </li> <li class="alt"> <span class="attribute">zend_debugger.expose_remotely</span><span>=</span><span class="attribute-value">always</span> </li> <li class="alt"><span> </span></li> </ol>
Then restart apache. After a short wait, we enter phpinfo() to check whether it is successful?