Пример организации работы php скрипта в PHPStorm с рабочей функцией подстановки кода в редакторе. С PHPStorm в работа по созданию скрипта сильно облегчается (отладка и точки останова).
- Для корректной работы установим HumanEmulator (далее HE) в отдельную папку по пути: C:\XWeb\HE 4.9.39 PHP STORM
- Заменяем файл php.ini, который находится
C:\XWeb\HE 4.9.39 PHP STORM\PHP\php.ini на файл C:\XWeb\HE 4.9.39 PHP STORM\PHP\ php.ini-phpstorm назвав его тем же именем - Запускам PHP Storm и в мастере первого запуска выбираем «Открыть». Выберем папку HE (целиком) путь C:\XWeb\HE9.39 PHP STORM.
Зачем это делается?
В папке содержится основной код приложения, который будет «виден» движку PHP Storm. - Копируем наш готовый рабочий скрипт в основную рабочую папку папку:
C:\XWeb\HE9.39 PHP STORM\MyScripts
Для примера у меня будет проект aliexpress. В код скрипта необходима добавит строчку:
$PHP_Use_Trought_Shell=false; - Настройка конфигурации исполнения
Для этого открываем конфигурацию Edit Configuration
Add New Configuration
Добавляем PHP ScriptУстанавливаем путь к файлу скрипта с которого происходит исполнение и имя этой конфигурации и нажимаем OK - Настройка интерпретатора. PHP Storm требует установить интерпретатор, в нашем случае он находится в каталоге PHP.
Для установки интерпретатора главное меню File/Settings/PHP создаем новый и выбираем путь к нему. - Запускаем приложение HE на порту 7010. Приложение будет работать как сервер и браузер, который будет отрабатывать команды находится в окне HE.
- Запуск скрипта по кнопке запуска PHP STORM
- Остановка скрипта по кнопке стоп, в панели отладки окна PHP STORM
Все настройки PHP STORM будут сохранены и уже для запуска приложения нужно будет исполнять только 8 пункт описания и соответственно для остановки пункт 9.
Подключение всех папок HE необходим для корректной работы главного преимущества PHP Storm удобных функций подстановки кода.
Так как лог в приложении HE ориентирован на исполнение в окне браузера встроенного в приложение, лог содержит символ переноса <br> и лог отображенный в панели PHP STORM в функции вывода сообщений лога в одну строчку, что мешает его корректно воспринимать. Можно добавит символ переноса строки \n в конце (после <br>) и лог будет выводится корректно.
К сожалению функция $folder_path = $debug->get_cur_script_folder(); возвращает некорректный результат (пустое значение) нужно заменить эту часть стандартной функцией $folder_path = getcwd();
P.S.
Запуск обычного скрипта на чистой версии phpStorm
Для запуска скрипта на чистой версии phpStorm не используя готовую конфигурацию из HE без привязки к серверной части необходимо.
1. Создать новый проект с phpStorm File/New project определить в меню корневую папку.
2. Настройка конфигурации исполнения Edit Configuration. Тип конфигурации PHP Script. Определить в ней Интерпретатор, как путь к файлу php.exe в моем случае это C:\Program Files\php-x64\php.exe (там свой php.ini).
Определить файл в проекте для исполнений (точка входа).
3. Настроить отладку при помощи XDebug. Скачать бинарник XDebug и поместить в папку C:\Program Files\php-x64\ext и переименовать его в php_xdebug.dll. Добавить в php.ini строку в конец текста zend_extension=php_xdebug.dll
Остальные расширения (ext) подключать тем же образом.