PHP Debugger Checklist

This topic provides a supplementary checklist and troubleshooting guide for debugging PHP scripts in Enterprise Architect.




See also

System Requirements

  • Apache HTTP Web Server version 2.2
  • PHP version 5.3 or above
  • XDebug version 2.1.1


Enterprise Architect

  • The model has an Analyzer Script configured to use the PHP XDebug platform
  • PHP source code has been imported into the model (for recording and testpoints)
  • When the PHP XDebug platform is selected from the Analyzer Script dialog, default runtime settings are listed in the Connection field
  • localpath:%LOCAL%
  • remotepath:%REMOTE%

Either define local paths for these default variables or edit the script to provide actual paths

For example: local source, remote source

localpath:c:\code samples\vea\php\sample



  • webserver is a network or local share
  • sample is a folder below share



In order to debug PHP scripts in Enterprise Architect, it is a requirement that the PHP is configured properly to load the XDebug extension

Settings similar to those below should be used:

  • [xdebug]
  • xdebug.extended_info=1
  • xdebug.idekey=ea
  • xdebug.remote_enable=1
  • xdebug.remote_handler=dbgp
  • xdebug.remote_autostart=1
  • xdebug.remote_host=X.X.X.X
  • xdebug.remote_port=9000
  • xdebug.show_local_vars=1

The IP address X.X.X.X refers to and should match the host specified in the model Analyzer Script

The IP address is the address XDebug connects with and the same address the Enterprise Architect PHP agent listens on



For debugging using Apache, the following lines should be present in the Apache configuration file, httpd.conf

LoadModule php5_module "php_home/php5apache2_2.dll"
AddHandler application/x-httpd-php .php

PHPIniDir "php_home"

where php_home  is the PHP installation path (the path where php.ini and apache dll exist)



To prevent both PHP and Apache timeouts during a debugging session, the settings below might require modification

These settings were used while developing the PHP Debugging agent in Enterprise Architect



File: php.ini

; EA prevent PHP timeouts when debugging PHP extensions
max_execution_time = 0

; EA prevent web server timeouts when debugging PHP extensions
max_input_time = -1

; EA log errors
display_errors = On

; EA display startup errors
display_startup_errors = On



File: httpd.conf

; EA prevent timeouts while debugging php extensions
Timeout 60000