Configuring the Zend Debugger tool involves:
- Downloading and installing Zend Debugger
- Enabling Zend Debugger integration with the PHP engine
- Integrating Zend Debugger with IntelliJ IDEA
- Download the Zend Debugger package which corresponds to your operating system.
- Locate the ZendDebugger.so (Unix) or ZendDebugger.dll (Windows) file in the directory which corresponds to your version of PHP (e.g. 4.3.x, 4.4.x, 5.0.x, 5.1.x, 5.2.x, 5.3.x, 5.4.x).
- Copy the file to your Web server in a location that is accessible by the Web server.
- Locate and open the active php.ini file.
To find out which php.ini file is active, create and run a test file with phpinfo(), then search for the Loaded Configuration File.
- Locate or create the [Zend] section.
- To load the Zend Debugger extension, add one of the following lines inside the [Zend] section depending on your operating system:
Linux and OS X:
Windows non-thread safe:
The Windows non-thread safe binary file is only used with Zend Core 2.0.
- Linux and OS X:
To enable access to Zend Debugger from PhpStorm, add the following lines:
zend_extension=<full_path_to_zend_debugger_extension> zend_debugger.allow_hosts=127.0.0.1 zend_debugger.expose_remotely=allowed_host zend_debugger.tunnel_min_port=<any integer value above 1024> zend_debugger.tunnel_max_port=<any integer value below 65535>
The value of the zend_debugger.allow_hosts parameter is the IPs of your machine to connect to the server debugger. It could be a comma-separated list of IPs in the format X.X.X.X (for example, 192.168.0.6).
For a thread-safe Windows binary use the zend_extension_ts parameter instead of zend_extension.
- Restart your Web server.
- To check that the Zend Debugger has been installed and configured correctly, create a file with the following contents:
Open the page that corresponds to the file in the browser. The output should contain a Zend Debugger section.
<?php phpinfo(); ?>
- Open the Project Settings and click PHP.
- On the PHP page that opens, click the Browse button next to the Interpreter drop-down list.
- In the Interpreter dialog box that opens, choose Zend Debugger from the Debugger drop-down list.
- Define the Zend Debugger behaviour. Click Debug under the PHP node.
On the Debug page that opens, specify the following settings in the Zend Debugger area:
- In the Debug Port text box, appoint the port for IntelliJ IDEA to communicate with the tool through. Type the port number within the tunnel specified in the php.ini file through zend_debugger.tunnel_min_port and zend_debugger.tunnel_max_port. For details, see http://files.zend.com/help/previous-version/Zend-Server-4-Community-Edition/zenddebugger.html
- To have IntelliJ IDEA accept any incoming connections from Zend Debugger engines through the port specified in the Debug port text box, select the Can accept external connections check box.
- To use a debugger toolbar in the browser, specify the port through which the debugger settings are passed to the browser in the Settings broadcasting port text box.
- To have Zend Debugger stop as soon as connection between it and IntelliJ IDEA is established (instead of running automatically until the first breakpoint is reached), turn on the option on the main menu.
- Configuring PHP Development Environment
- Creating and Editing Run/Debug Configurations
- Configuring XDebug