Показать страницуИстория страницыСсылки сюдаCopy this pageExport to MarkdownODT преобразованиеНаверх Вы загрузили старую версию документа! Сохранив её, вы создадите новую текущую версию с этим содержимым. Медиафайлы{{tag>php phpstorm ide debug php}} ====== PhpStorm IDE for PHP ====== ===== Отладка / Debug ===== * [[php:xdebug|]] ===== Автогенерация кода ===== Существует куча рутинных задач, которые иногда выполняются самим фреймворком, а иногда требуют тупой ручной работы. PHPStorm помогает упростить некоторые [CTRL]+N, например: ==== Создание геттеров и сеттеров (Getters & Setters) ==== По существующим переменным класса можно сгенерировать набор геттеров и\или сеттеров, причем в появляющемся окне можно выбрать для каких именно. ==== Создание PHPDoc ==== По сути действие аналогично тому, как если перед существующим методом начать писать <code php>/**</code> и нажать Enter. Можно выбрать одну или несколько функций и на основании атрибутов и содержимого будет сформирован Doc Block. Переназначение и реализация при наследовании (Override & Implementation) При создании класса потомка или реализации абстрактных методов, чтобы не допустить ошибку, обычно приходится лезть в класс предок и запоминать или копипастить название и атрибуты метода. Или проверять для всех ли абстрактных методов есть реализация и вспоминать что же там требуется для ArrayAccess. Есть вариант получше: * [CMD] + I – Имплементация * [CMD] + O – Переназначение После нажатия хоткея появляется окно где можно выбрать какие именно методы будем реализовывать. После выбора генерится соответствующий метод с соблюдением приватности и имена атрибутов, например так: public function createTable($drop = false) <code php> { return parent::createTable($drop); } </code> ===== Автоформатирование кода ===== Когда пишешь код сам, обычно форматирование получается само, но в ситуации, когда нужно поменять Code Style или пытаешься открыть чужой непривычно оформленный код, возникают проблемы. Можно смириться, а можно нажать [CMD] + [ALT] + L и IDE отформатирует код в соответствии с настройками (Preferences -> Project Settings -> Code Style -> PHP) ===== Подсказки (Code Completition) ===== Для функций нужно писать PHPDoc с параметром @ return. Например: <code php> /** @return SomeClass */ function a() {[…]} </code> Для переменных также можно указать комментарий: <code php> /** @var $my_var SomeClass */ </code> Тогда ниже для $my_var будет доступны подсказки Для методов над классом можно указать PHPDoc <code php> /** @method B foo() Описание метода */ class B extends A {[…]} </code> Если функция возвращает массив объектов <code php> /** @return SomeObject[] */ </code> ===== Консоль ===== Многие фреймворки используют консоль для быстрого выполнения частых действий. Для Symfony, Zend и других популярных фреймворков PHPStorm поддерживает подсказки и автодополнение консольных команд в Command Line Tools Console [CMD] + [SHIFT] + X ===== Разновидности поиска ===== ==== [CMD] + N – Find by Class Name ==== Поиск по имени класса. Удобно в больших проектах, когда всё зарыто вглубь директорий или просто неизвестно где находится. Убойности добавляет «умный поиск», т.к. ищется как по части названия класса, так и по первым буквам, например SomeVeryLongClass будет найден по «SVLC». Учитывает регистр букв, будьте внимательны. UPD: «Умный поиск» разработчики называют Camel's Hump. Кстати в настройках можно сделать чтобы выделение слов, а также перемещение осуществлялось не целиком (до пробела), а именно по по словам (до заглавной буквы). Спасибо, yujin1st ==== [CMD] + [SHIFT] + N – Find by File Name ==== Поиск по имени файла. Аналогично поиску по имени класса использует «умный поиск». UPD: Для нахождения файла по вложенности можно использовать слеш: some/deep/dir/with/file.txt найдется по «s/d/d/w/f», спасибо develop7 ==== [CMD] + [SHIFT] + [ALT] + N – Find Symbol ==== Поиск любой функции/метода и констант, очень удобно, когда точно помнишь имя метода, а класс нет. Спасибо conf ==== [ALT] + [F7] – Find Usages ==== В момент когда курсор находится на имени класса или метода нажатие хоткея позволяет найти все использования в проекте или определенной части (Scope). Есть вариант [CTRL] + [ALT] + [F7] — тот же поиск по использованиям, но в виде контекстного меню. Спасибо iPavel ==== [CTRL] + [SHIFT] + F – Find in Path ==== Поиск произвольной фразы по файлам проекта. При рефакторинге обычно хорошо дополняет Find Usages. Не стоило бы писать о “просто поиске”, если бы не возможность ограничить директорию в котором будут искаться нужные штуки, или настроить Scope. Scope позволяет гибко настроить и сохранить область поиска, для использования в дальнейшем. Можно выкинуть из поиска, например, файлы фреймворка или сторонние либы. ===== phpstorm license key ===== <hidden>http://www.rover12421.com/2015/04/07/jetbrains-product-patch-or-keygen.html</hidden> ==== Ключи активации phpstorm Ver 8 - 9 (Windows / Linux / MacOs) ==== <hidden><code> User Name:Learn Programming ===== LICENSE BEGIN ===== 63758-12042010 00000Ryqh0NCC73lpRm!XVcxFChJ2g TUR2lZtlLXrPLbQ66Gs8MHs51RvF2y agoDlzne08Zm8VXbts1UMKE!EW4v8G ===== LICENSE END ===== </code> <code> User Name:Mr. Enrew ===== LICENSE BEGIN ===== 9167-D38728T 000020QwaYAMfRP"lg"iY7ZOCtQ7Hw Ety0BucaeyLzwzka899PsSMGiHkTYI hUZlpca1ffezR0DyzFpdOki7jbVm8U ===== LICENSE END ===== </code> <code> User Name:Dr. Alban ===== LICENSE BEGIN ===== 2604-D71052T 00001ikR7KznanEGNuWRag20JBc!fy HVl4Rv8nyMgpBnoKcRfq0x!vXkBMH4 qGcM1PCMSv2QHhXXEeVZSTFhkZ4xb5 ===== LICENSE END ===== </code> <code> Product : PhpStorm UserName : Mr. Endigo ===== LICENSE BEGIN ===== 6401-D92210T 00001GlhmP0"p5a60X9!rZ4zBUB8Cl UdFJuehu2PdaOh!CjXPrpBW6AfZzAW ILtUpsRXUESs"HBcQNy!qofCzLSEix ===== LICENSE END ===== </code> <code> Product : PhpStorm UserName : Entony Clichkovsky ===== LICENSE BEGIN ===== 8786-D23014T 00000zOS!U7K2P2nOUHZtUJPuopXDt p55feQcokDPS31lsZ5vqqOVmCCl9Cx WxVS!fALdMvW0LQ32YJImTyq!pWjS! ===== LICENSE END ===== </code> <code> Product : PhpStorm UserName : Roberto Almano ===== LICENSE BEGIN ===== 8659-D34829T 00000ILT!byBeyH4Yvcykp"O2MwLGg ZoUJbIVuwszN5yUoXBGbw5SUzpKUzn UBXRi8m4IBzZmfX4EcCKNu8g4UxcdM ===== LICENSE END ===== </code> </hidden> ==== Ключи активации phpstorm Ver 10 - 11 (Windows / Linux / MacOs) ==== <hidden phpstorm Ver 10 - 11> * Откройте активационное окно Select Help -> Register… * Выберите пункт **server license** * Вставте в поле ввода http://idea.lanyus.com/ * Наслаждайтесь </hidden> ==== 2016.1 ==== <hidden 2016.1> * Откройте активационное окно Select Help -> Register… * Выберите пункт **server license** * Вставте в поле ввода http://idea.qinxi1992.cn * Наслаждайтесь </hidden>СохранитьПросмотрРазличияОтменить Сводка изменений Примечание: редактируя эту страницу, вы соглашаетесь на использование своего вклада на условиях следующей лицензии: CC0 1.0 Universal