При использовании Aptana с PHP 5.2.3 в режиме отладки (с помощью многопоточного XDebug 2.1.0 для PHP 5.2 VC6) для запуска простого многострочного скрипта hello world, я получаю некоторое ошибочное поведение на вкладке «Консоль» Aptana.
У меня есть сценарий hello_world.php, который содержит следующее:
<?php
$stdout = fopen('php://stdout', 'w');
fwrite($stdout, 'Hello world!');
fwrite($stdout, 'Hello world!2');
fwrite($stdout, 'Hello world!3');
fclose($stdout);
?>
Моя конфигурация отладки PHP в Aptana использует php.exe из папки c: \ wamp \ php вРежим CLI с XDebug в качестве отладчика.
Если я запускаю сеанс отладки и позволяю своему коду выполнить прямо, я получаю ожидаемый вывод (как и я, если я запускаю это из командной строки).
Если я покажу код, я увижу только первую строку («Hello world!») В разделе «Консоль» Aptana.На самом деле, я могу даже не увидеть первый «Hello world!»быстро переходя от строки fopen () к первой строке fwrite ().Если я сделаю паузу на 3–5 секунд после перехода через fopen (), а затем запускаю fwrite, я получу первый «Hello world!».
Само собой разумеется, это совершенно сбивает с толку.Пожалуйста, дайте мне знать, если вам нужна дополнительная информация о моей конфигурации, и я буду рад предоставить ее!
Ура!Дункан
(Я на самом деле пытаюсь отладить сценарий оболочки CakePHP, который использует fwrite для stdout вместо echo ... но сначала я хочу решить эту проблему!)