Реалізований у PhpStorm графічний PHP-відладчик підтримує умовні точки зупинки, відстеження значень і автоматизований вхід у налагодження окремих процедур. Для тестування додатків підтримується каркас тестових модулів PhpUnit і графічний інтерфейс для запуску тестів. Під час редагування коду виділяються конструкції синтаксису, здійснюється розширене форматування конфігурації, виявлення помилок у режимі реального часу та завершення коду. PhpStorm-редактор враховує коментарі до коду під час його завершення, автоматично вибираючи оптимальне вирішення проблеми. PHP-рефакторинг і редагування шаблонів гарантує зміну проекту в найкоротші терміни. PhpStorm дає змогу візуалізувати код в ієрархічному вигляді та забезпечує швидку навігацію по всіх елементах.
Завдяки застосуванню PHPUnit-тестів можна швидко переглядати результати генерації коду окремих блоків або всього додатка. Якщо тест було проведено невдало, продукт дає змогу переглядати окремі кодові рядки, в яких було виявлено помилку. PhpStorm забезпечує налагодження коду JavaScript і надає широкий діапазон можливостей: знаходження точки зупинки в HTML і JavaScript, налаштування параметрів точки зупинки, тестування синтаксису коду в режимі реального часу тощо.
Основні можливості
- Підтримка PHP 5.3, 5.4 і 5.5, включно з генераторами, співпрограмами, просторами імен, замиканнями, типажами, синтаксисом коротких масивів, доступом до члена класу в процесі інстанціювання, розіменуванням масиву в процесі виклику функції, бінарними літералами, виразами в статичних викликах тощо. PhpStorm може використовуватися як для сучасних, так і для традиційних проектів на PHP.
- Автодоповнення коду фіналізує класи, методи, імена змінних, ключові слова PHP, а також широко використовувані імена полів і змінних залежно від їхнього типу.
- Підтримка стандартів оформлення коду (PSR1/PSR2, Drupal, Symfony2, Zend).
- Підтримка PHPDoc. PhpStorm надає відповідне автодоповнення коду, що базується на анотаціях @property, @method і @var.
- Детектор дубльованого коду.
- PHP Code Sniffer (phpcs), що перевіряє код на льоту.
- Рефакторинги (Перейменування, Введення змінної/константи/поля, Вбудовування змінної).
- Підтримка редагування шаблонів Smarty (підсвічування синтаксичних помилок, автодоповнення функцій і атрибутів Smarty, автоматичне вставляння парних дужок, лапок і закритих тегів та ін.).
- MVC подання для Symfony 2 і Yii фремверків.
- Розпізнавання коду, запакованого в PHAR-архіви.
- Підтримка SQL і баз даних (Рефакторинг схеми бази даних, генерація скриптів міграції схеми, експорт результатів виконання запиту до файлу або буферу обміну, редагування збережених процедур і багато іншого.
- Віддалене розгортання додатків і автоматична синхронізація з використанням FTP, SFTP, FTPS та ін. протоколів.
- Інтеграція з системами керування версіями (Git – включно зі спеціальним функціоналом для роботи з GitHub, Subversion, Mercurial, Perforce, CVS, TFS), що дає змогу виконувати багато дій, наприклад commit, merge, diff та інші, прямо з PhpStorm.
- Локальна історія (Local History) (локально відстежує будь-які зміни в коді).
- PHP UML (Діаграми класів UML для PHP коду з рефакторингами, що викликаються прямо з діаграми).
Підтримка Phing (надає автодоповнення, перевірку стандартних тегів, властивостей, імен цілей, значень атрибутів шляху в компонувальних файлах (build files). - Інтеграція з баг-трекерами.
- Підтримка Vagrant, SSH консолі та віддалених інструментів
- Підтримка Google App Engine для PHP
- Легко конфігурований візуальний налагоджувач (Xdebug, Zend Debugger) для перевірки відповідних контексту локальних змінних і заданих користувачем об’єктів стеження, зокрема масивів і складних об’єктів, а також редагування значень на льоту.
- Інтеграція з профілювальником: скрипти можна профілювати прямо з PhpStorm за допомогою Xdebug або Zend Debugger. Доступний агрегований звіт; користувач може перейти від статистики виконання прямо до функції в PHP коді.
- Інтеграція з фреймворком модульного тестування PHPUnit (тести PHPUnit можна розробляти в PhpStorm і одразу запускати з директорії, файлу або класу за допомогою контекстного меню) з покриттям коду (code coverange).
- Автодоповнення коду для JavaScript, HTML і CSS (для тегів, ключових слів, міток, змінних, параметрів і функцій).
- Підтримка HTML.5.
- Live Edit: зміни в коді можна миттєво переглянути в браузері без перезавантаження сторінки.
- Підтримка CSS/SAS/Less (автодоповнення коду, підсвічування помилок, валідація тощо).
- Zen Coding.
- Навігація по коду і пошук використань (перейти до оголошення/ідентифікатора, знайти використання)
- Підтримка ECMA Script Harmony.
- Рефакторинги для JavaScript (перейменування, виділення змінної/функції, вбудовування змінної/функції, переміщення/копіювання, безпечне видалення, витяг вбудованого скрипта в окремий файл).
- Відладчик JavaScript, а також інтеграція з фреймворками модульного тестування JavaScript.