(PECL apd >= 0.2)
apd_breakpoint — インタプリタの処理を停止し、ソケットからの CR を待つ
$debug_level
)スクリプトの実行を停止し、接続しているソケットからの応答を待ち受ける ために使用します。プログラムのステップ実行を行うには、Enter キーを押す (空行を送る) あるいは実行したい PHP コマンドを入力します。
debug_level
XXX_TRACE 定数の組み合わせによる整数値。
MEMORY_TRACE
を用いることは推奨しません。
これは非常に低速で、またあまり正確ではないようだからです。
ASSIGNMENT_TRACE
は、まだ実装されていません。
すべての機能 (TIMING, FUNCTIONS, ARGS SUMMARY (strace -c のようなもの)) のトレースを有効にするには、値 99 を指定します。
成功した場合に TRUE
を、失敗した場合に FALSE
を返します。
例1 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);