Phpstorm не работает php

Phpstorm не работает php

На данный момент, PhpStorm – одна из лучших IDE для разработки на языке PHP, которая предоставляет множество возможностей для разработчика, такие как запуск PHP-скриптов, благодаря возможности подключения внешнего интерпретатора PHP и отладку через расширение Xdebug.

В этой статье мы рассмотрим возможность подключения интерпретатора PHP, отладчика Xdebug к PhpStorm и использование встроенного в IDE web-сервера.

Начнем с установки отладчика Xdebug в PHP.

Установка Xdebug

Первым делом скачаем и установим сам интерпретатор PHP по ссылке: http://php.net/downloads.php

Далее нужно произвести начальную настройку PHP и прописать в переменную окружения PATH путь к интерпретатору. Чтобы не повторяться, весь необходимый порядок действий мной описан в этой статье: Установка Composer и снятие ограничения количества обращений к GitHub

Теперь можно перейти к установке отладчика Xdebug, для которого существует специальный помощник, значительно упрощающий процедуру установки. Для его использования перейдем по ссылке: https://xdebug.org/wizard.php

На этой странице, необходимо ввести в поле ввода информацию об установленном PHP-интерпретаторе, которая генерируется с помощью PHP-функции phpinfo(). Вводить нужно весь скопированный текст со страницы.

Или, введя в консоль команду php -i, которая генерирует информацию о PHP.

Копируем полученную информацию, нажимаем кнопку Analyse my phpinfo() output и получаем инструкцию по установке Xdebug.

В зависимости от вашей версии PHP и пути установки инструкция может отличаться от моей:

  • Скачиваем библиотеку Xdebug для PHP версии 5.6.19 по ссылке: php_xdebug-2.4.0-5.6-vc11-nts.dll
  • Перемещаем её в папку C:\php\ext
  • В файл C:\php\php.ini находим секцию Dynamic Extensions и добавляем следующую строку:

Подключение интерпретатора PHP к PhpStorm

Теперь перейдем в PhpStorm и откроем настройки комбинацией клавиш Ctrl+Alt+S.

Далее, в секции Languages & Frameworks выберем пункт PHP. В этой секции необходимо назначить интерпретатор для IDE в пункте Interpreter нажав на кнопку …

В открывшемся окне, в поле Name вводим любое имя для удобства дальнейшей идентификации, например: PHP 5.6.11.

В поле PHP executable указываем путь до интерпретатора, например: C:\php\php.exe. Обратите внимание на появившуюся версию PHP и дебагера, что свидетельствует о правильности установки.

Чтобы убедиться в том, что правильно отрабатывает подключенный интерпретатор PHP, создадим в PhpStorm новый проект, добавим к нему файл index.php и запишем в этот файл, например, функцию var_dump([ 1, 2, 3 ]) с переданным в неё массивом.

Нажав правой кнопкой мыши на этом файле, выберем Open in Browser -> Default.

На странице мы видим характерный вывод var_dump(), который генерируется с помощью Xdebug. И, если посмотреть на заголовки ответа через консоль разработчика, то мы увидим, что всё работает верно:

Начальная настройка Xdebug и установка его под линукс описана в статье Установка модуля Xdebug для PHP под Ubuntu Linux

Работа с отладчиком Xdebug в PhpStorm

Прежде чем приступит к отладке PHP-скриптов с помощью Xdebug произведем необходимую настройку в файле php.ini. В секции Dynamic Extensions после подключения расширения Xdebug добавим следующие настройки:

Теперь зайдем в PhpStorm и откроем настройки. Перейдем в Languages & Frameworks -> PHP -> Debug. В секции Xdebug убедимся, что установлены следующие настройки:

Чтобы проверить, что все действия были проведены верно, добавим в уже имеющийся в проекте файл index.php следующий код:

Читайте также:  Почему не работает хочу общаться

И поставим точку остановки на переменной $arr.

Теперь запустим отладку этого скрипта, нажав правую кнопку мыши и выбрав пункт Debug ‘index.php’. Если все было сделано правильно, то в PhpStorm появится вывод дебага, как показано на скриншоте.

В итоге, мы получили мощный и удобный инструмент для отладки PHP-скриптов с подключенным интерпретатором PHP, а также возможность запускать скрипты через встроенный в PhpStorm локальный web-сервер.

Источник

Установка и настройка JetBrains PhpStorm 6 под Windows 7 для разработки web-приложений на PHP

Я Microsoft Scum и привык к наличию инсталляторов, после успешного выполнения которых у меня на машине установлено и настроено всё необходимое.

С PHP оказалось не так, что привело к нескольким часам мучений и ложных ходов, для устранения которых я и написал эту статью.

Как это работает

Будучи web-разработчиком под ASP.NET ещё с 2003 года, я привык, что разрабатываемое приложение крутится на IIS. Сейчас вместе со Студией ставится компактная версия IIS, и, признаться, разработка под ним в большинстве случаев гораздо удобнее развёртывания дополнительной разработческой среды под полноценным IIS.

У PHP также есть режим запуска в качестве сервера с выбором корневой директории приложения. Однако, выяснилось, что такой режим не позволяет по-человечески отлаживать продукт. По этой причине мы будем воссоздавать более или менее родную среду для работы фреймворков: Apache+PHP. При этом возможность отладки и тестирования обеспечивается отдельными модулями, у которых есть конкретная сборка под конкретную сборку PHP без каких-либо свобод выбора. Оно и к лучшему — отсутствие свободы выбора версий ограничивает нас всего одним сценарием установки. Его то мы и опишем.

В статье будут использованы значения по умолчанию для 64-битной Винды. Для 32-битной разница лишь в том, что вместо папки C:\Program Files (x86) надо использовать папку C:\Program Files.

Целевая конфигурация

  • PHP 5.4 (5.4.15) TS x86 — многопоточная версия PHP 5.4. Её безглючность не гарантируется, однако, у однопоточного отсутствуют жизненно важная для работы с Apache php5apache2_4.dll, так что ставим многопоточный PHP, крестимся и едем дальше;
  • xDebug 2.2.2 — я решил не пользоваться стандартным Zend Debugger, поскольку индивидуальный web-сервер не нуждается в коллективной отладке, а вот точность при работе профайлера может оказаться крайне полезной;
  • PHPUnit — поскольку предполагается, что разработчик искушен не только хорошими средствами разработки, но и хорошими средствами поддержки функционала в процессе последующих изменений, а также не брезгует пользоваться разными вендорскими фреймворками вроде Symfony, модульное тестирование просто необходимо;
  • Apache 2.4.4 — всё вышеперечисленное мы будем раскручивать под самой современной на момент последней правки данной статьи версией Апача;
  • JetBrains PhpStorm 6 — лично для меня он удобнее, чем бесплатные аналоги, а также он прекрасно интегрирован с PHP, хотя и будут нюансы.

Ставим PHP 5.4

На момент написания статьи инсталлятора не предлагалось, поэтому ставим что есть:

  1. логинимся под учетной записью с административными правами;
  2. windows.php.net/download/#php-5.4 — качаем zip-архив VC9 x86 (http://windows.php.net/downloads/releases/php-5.4.15-Win32-VC9-x86.zip ); любители жесткого хардкора могут скачать соответствующий Debug Pack, но у меня предложенная сборка пока ни разу не упала;
  3. распаковываем содержимое zip-архива в папку «C:\Program Files (x86)\PHP\v5.4» (думаю, гипотетический инсталлятор поставил бы всё именно туда);
  4. внутри полученной папки запускаем скрипты «pws-php5cgi.reg» и «pws-php5isapi.reg» (это не обязательно, но так PHP пропишется в IIS и даст возможность захостить ваш шедевр);
  5. копируем «php.ini-development» в «php.ini»
  6. открываем «php.ini», находим там блок:
    и снимаем комментарий с последней строки, получится:
  7. всё в том же php.ini находим блок:
    и прописываем там зону, в которой находится компьютер (у меня это «Europe/Moscow», php.net/manual/en/timezones.php содержит информацию о поддерживаемых зонах):
  8. лезем в Start\Control Panel\System\Advanced System Settings, там в Environment Variables в списке System Variables находим переменную «Path» и добавляем через «;» путь «C:\Program Files (x86)\PHP\v5.4»
  9. Открываем cmd и убеждаемся, что команда ‘php -v’ (регистр имеет значение) выдает информацию по установленной версии PHP (в гайде это 5.4.15).
Читайте также:  Что делать если не работает один наушник беспроводной airpods pro

Готово.

Ставим XDebug 2.2.2

SUMMARY
• Xdebug installed: 2.2.2
• Server API: Command Line Interface
• Windows: yes — Compiler: MS VC9 — Architecture: x86
• Zend Server: no
• PHP Version: 5.4.14
• Zend API nr: 220100525
• PHP API nr: 20100525
• Debug Build: no
• Thread Safe Build: no
• Configuration File Path: C:\Windows
• Configuration File: C:\Program Files (x86)\PHP\v5.4\php.ini
• Extensions directory: ext
YOU’RE ALREADY RUNNING THE LATEST XDEBUG VERSION
But here are the instructions anyway:
1. Download
2. Move the downloaded file to ext
3. Update C:\Program Files (x86)\PHP\v5.4\php.ini and change the line
zend_extension = ext\

Надпись капслоком самая важная. Если вдруг завтра выйдет свежая версию XDebug, пишите, я его себе тоже поставлю.

Готово.

Ставим PHPUnit

  1. pear.php.net/go-pear.phar — скаченный файл кладем в папку «C:\Program Files (x86)\PHP\v5.4» (phar — это файл с дистрибутивом приложения, запустить дистрибутив можно командой «php file_name.phar» в консоли);
  2. запускаем command prompt от имени администратора, переходим в папку «C:\Program Files (x86)\PHP\v5.4» и вызываем команду «php go-pear.phar», на вопросы скрипта отвечаем «system», в следующем вопросе нажимаем Enter (или принимаем все локации директорий по умолчанию), позволяем отредактировать php.ini (инсталлятор пропишет «C:\Program Files (x86)\PHP\v5.4\pear в качестве инклюд-пути»);
  3. в результате выполнения предыдущего пункта появляется система управляния PHP-паками (аналогично NuGet для Студии), которая использует онлайн-репозитории — добавим туда репозиторий PHPUnit, введя в command prompt (под админом) команду «pear channel-discover pear.phpunit.de» (не смотря на прокси, у меня всё получилось, в противном случае проверьте правильность настроек прокси-сервера в Винде и его работоспособность);
  4. если в command prompt ввести команду «pear remote-list -c phpunit», то станет ясно, что помимо самого PHPUnit там есть много других печенек, но пока мы поставим только саму основу, а дополнительные модули будем добавлять по мере необходимости: «pear install phpunit/phpunit»;

Готово.

Обновление PHPUnit и других модулей, установленных с помощью PEAR, делается командой «pear upgrade-all». Вообще, рекомендую почитать инструкцию по PEAR. Опытного разработчика она непременно наведёт на размышления о том, чтобы распространять свои труды не закачкой по FTP, а с использованием всё того же PEAR.

Ставим Apache 2.4

Лично у меня забиты порты 80 (IIS), 8080 (TFS) и 8000 (HTTP proxy). По этой причине я поставил Apache слушать порт 8085. Здесь будут приведены настройки для Apache на порт 8085. Также в качестве корневых директорий я использую «d:\www\Apache».

У Апача под Винду есть отдельный сайт www.apachelounge.com, откуда можно скачать самый свежак. Поскольку PHP у нас x86, то и все .dll-файлы у него x86, поэтому и Apache придется ставить x86.

  1. www.apachelounge.com/download — Качаем httpd-2.4.4-win32.zip и распаковываем содержимое папки «Apache24» архива в папку «C:\Program Files (x86)\Apache24»;
  2. открываем на редактирование (под админом) файл C:\Program Files (x86)\Apache24\conf\httpd.conf
  3. находим настройку ServerRoot и ставим (С тех пор, как Винда превратилась из графической оболочки над DOS в самостоятельную операционку, ей всё равно, в какую сторону наклонена косая черта, а вот Апачу не всё равно, нам надо использовать строго «/»);
  4. находим настройку Listen и ставим
  5. находим настройку DocumentRoot (и следующий за ней блок Directory) и настраиваем наши пути:не забудьте создать эту директорию (вы могли заметить, что в конце пути я добавил поддиректорию web — это связано с тем, что я собираюсь использовать Symfony, который предполагает содержание самого сайта в поддиректории web общего проекта);
  6. находим список большого количества инструкций LoadModule и раскомментариваем/редактируем/добавляем в хвост настройку
  7. не факт, что модуль загрузится, поэтому в последних Apache принято прочие связанные с модулем настройки заклячать в условие IfModule, проверяющее, что модуль загрузился, поэтому находим/добавляем контейнер для настроек PHP-модуля под Apache:
  8. настраиваем модуль PHP под Apache:
  9. находим настройки модуля листинка директории и редактируем её:
  10. регистрируем Апач в качестве сервиса командой в command prompt
  11. при загрузке Apache будет запускаться автоматически, а сейчас запустим его вручную командой в command prompt
  12. а теперь посмотрим, как всё это будет взлетать, поместив в директорию «D:\www\Apache\web» файл «index.php»:и запросив его из браузера по url http://localhost:8085/
Читайте также:  Покетбук 626 плюс сломалась подсветка

Готово.

Настраиваем PhpStorm 6

www.jetbrains.com/phpstorm — качаем, ставим, запускаем PhpStorm 6 (у него есть месяц триала, лично мне этого более чем хватило для приобретения).

Устанавливаем интеграцию с TFS (опционально)

К работе с TFS из среды PhpStorm, как и из других продуктов, использующих среду Idea, придется привыкать. Терминология и поведение существенно отличается от оных в Visual Studio. Тем не менее, пользоваться интеграцией гораздо удобнее. чем бегать в Visual Studio за каждым файлом.

Итак,

  1. На экране должно быть стартовое окно PhpStorm, если вместо этого окна отображается среда разработки, закрываем текущий проект;
  2. в правой области стартового окна выбираем Configure/Plugins Идём в File/Settings;
    Из среды разработки эта настройка доступна из меню File/Settings. В левой части окна отображается список настроек как проекта, так и среды вцелом. Нужно будет выбрать настройк среды Plugins.
    «Настройки проекта» — настройки из списка с заголовком Project Settings,
    «Настройки среды» — настройки из списка с заголовком IDE Settings.
  3. в открывшемся списке плагинов убеждаемся, что плагин «TFS Integration» не установлен (по умолчанию он не входит в поставку PhpStorm) и нажимаем кнопку «Install JetBrains plugin» (внизу окна);
  4. в окне поиска вбиваем «TFS» и щелкаем два раза на строке с плагином «TFS Integration», на вопрос о намерении скачать плагин отвечаем твердым «Yes»;
  5. дожидаемся окончания установки плагина, закрываем окна настроек и перезапускаем PhpStorm, чтобы свежеустановленный плагин заработал.

Теперь у нас есть среда, готовая работать с TFS.

Создаём или открываем проект
Настраиваем php-сервер в PhpStorm
Настраиваем web-приложение
Запускаем отладку
  1. Ставим на какую-нибудь инструкцию брэйкпоинт;
  2. в меню «Run/Debug» выбираем «My Application at Local Apache» — запустится отладка сайта;
  3. убеждаемся, что выполнение php-скрипта прервалось на брэйкпоинте, и нам доступны все прелести дебагера.

Среда готова к работе.

Заключение

Пользователям MS Visual Studio придется немного привыкнуть к тому, что нажатие кнопки Run при включенном дебагере приводит не к продолжению исполнения текущего скрипта, а к открытию в браузере новой закладки, новому запросу на сервер и отключению отладки, но даже с такими отличиями процесс отладки протекает довольно легко.

Источник

Оцените статью