(PECL apd >= 0.2)
apd_breakpoint — Останавливает интерпретатор и ожидает символ возврата каретки (CR) из сокета
$debug_level
) : boolЭто может использоваться для остановки ранее запущенного вами скрипта и ожидать ответ с сокета. Для продолжения программы необходимо отправить "Enter" (пустая строка) или ввести команду php на исполнение.
debug_level
Целое число, полученное сложением констант XXX_TRACE.
Не рекомендуется использовать константу
MEMORY_TRACE
. Это очень медленно и может давать неточные результаты.
ASSIGNMENT_TRACE
еще не реализовано.
Для включения всех видов отслеживания функций (TIMING, FUNCTIONS, ARGS SUMMARY (наподобие strace -c)) используйте значение 99
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки.
Пример #1 Typical session using tcplisten
bash#tcplisten localhost 7777 APD - Advanced PHP Debugger Trace File --------------------------------------------------------------------------- Process Pid (6118) Trace Begun at Sun Mar 10 23:13:12 2002 --------------------------------------------------------------------------- ( 0.000000): apd_set_session_trace called at /home/alan/Projects/project2/test. php:5 ( 0.074824): apd_set_session_trace_socket() at /home/alan/Projects/project2/tes t.php:5 returned. Elapsed (0.074824) ( 0.074918): apd_breakpoint() /home/alan/Projects/project2/test.php:7 ++ argv[0] $(??) = 9 apd_breakpoint() at /home/alan/Projects/project2/test.php:7 returned. Elapsed ( -2089521468.1073275368) >\n statement: /home/alan/Projects/project2/test.php:8 >\n statement: /home/alan/Projects/project2/test.php:8 >\n statement: /home/alan/Projects/project2/test.php:10 >apd_echo($i); EXEC: apd_echo($i); 0 >apd_echo(serialize(apd_get_active_symbols())); EXEC: apd_echo(serialize(apd_get_active_symbols())); a:47:{i:0;s:4:"PWD";i:1;s:10:"COLORFGBG";i:2;s:11:"XAUTHORITY";i:3;s:14:" COLORTERM_BCE";i:4;s:9:"WINDOWID";i:5;s:14:"ETERM_VERSION";i:6;s:16:"SE SSION_MANAGER";i:7;s:4:"PS1";i:8;s:11:"GDMSESSION";i:9;s:5:"USER";i:10;s:5:" MAIL";i:11;s:7:"OLDPWD";i:12;s:5:"LANG";i:13;s:10:"COLORTERM";i:14;s:8:"DISP LAY";i:15;s:8:"LOGNAME";i:16;s:6:" >apd_echo(system('ls /home/mydir')); ........ >apd_continue(0);