phpstorm подсказки по функциям php на русском

PhpStorm — повышаем производительность (клавиатурные сокращения). Часть 1

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русскомPhpStorm — повышаем производительность (плагины и темы оформления). Часть 2

У всех нас есть любимые IDE или редакторы в которых мы пишем код. Для меня это PhpStorm, и потребовалось некоторое время, чтобы освоить все клавиатурные сокращения и ускорить свой рабочий процесс. В этой статье я поделюсь с вами некоторыми сочетания клавиш и советами, которые возьмут на себя часть рутинной работы, если вы тоже делаете свою работу в этой IDE. Эта статья была частично вдохновлена этим Reddit тредом, и я буду упомянать и демонстрировать некоторые трюки найденные там.

Обратите внимание, что я разрабатываю на Linux в Vagrant, размещенном в Windows, я буду использовать клавишу CTRL вместо CMD. Если вы работаете в OS X, замените CTRL на CMD.

Клавиатурные сокращения и хаки

(осторожно, много gif изображений)

Давайте посмотрим, чем мы можем воспользоваться: (в скобках рядом с сокращениями указаны названия функций в keymap)

К тому же, как вы можете видеть во всплывающем окне, которое появляется в приведенной выше анимации, вы можете выбрать переформатирование всего проекта. Если есть необходимость использовать эту возможность часто и при этом вы не так много работаете над проектами других людей, то возьмите на заметку — есть возможность связать макросом CTRL+S и автоформатировать код при каждом сохранении. Но стоит заметить, однако, что если вы работаете над проектом с кем-то еще, это может привести к слишком частым изменениям форматирования кода и загрязнить систему контроля версий.

Если вы находитесь в Linux, комбинация CTRL+ALT+L уже может быть связана с «Блокировкой экрана», и вы должны будете отвязать его в системных настройках или изменить его в настройках PhpStorm.

Источник

Продуктивное использование PHPStorm

В процессе использования IDE иногда случайно, иногда специально находятся полезные фишки, сочетания клавиш и прочие заложенные разработчиками приятные штуки, которые никогда не оседают в памяти без регулярного их использования и всячески ускользают при чтении мануалов.

Не претендуя на библию или «настольную статью программиста» я хочу поделиться полезными находками в моей любимой IDE, не скатываясь в тупую копипасту мануалов и скучных списков хоткеев, только то, что я сам использую постоянно и над чем удивляются коллеги: «о! а так можно?»

Если ни одна из фишек описанных в статье вам была не в новинку, потрудитесь добавить хотя бы одну свою, тогда мир станет лучше, деревья зеленее… ну вы поняли.

Я работаю на Mac, поэтому хот-кеи указываю в «своей» раскладке. Большинство из них будут работать простой заменой [CMD] на [CTRL] или [ALT], остальные, возможно, придется поискать на вкладке Keymap. Буду благодарен, если кто-то проверит и продублирует раскладку для WIN.

Автогенерация кода

Существует куча рутинных задач, которые иногда выполняются самим фреймворком, а иногда требуют тупой ручной работы. PHPStorm помогает упростить некоторые [CTRL]+N, например:

Создание геттеров и сеттеров (Getters & Setters)
По существующим переменным класса можно сгенерировать набор геттеров и\или сеттеров, причем в появляющемся окне можно выбрать для каких именно.

Создание PHPDoc
По сути действие аналогично тому, как если перед существующим методом начать писать /** и нажать Enter. Можно выбрать одну или несколько функций и на основании атрибутов и содержимого будет сформирован Doc Block.

Переназначение и реализация при наследовании (Override & Implementation)
При создании класса потомка или реализации абстрактных методов, чтобы не допустить ошибку, обычно приходится лезть в класс предок и запоминать или копипастить название и атрибуты метода. Или проверять для всех ли абстрактных методов есть реализация и вспоминать что же там требуется для ArrayAccess. Есть вариант получше:
[CMD] + I – Имплементация
[CMD] + O – Переназначение
После нажатия хоткея появляется окно где можно выбрать какие именно методы будем реализовывать. После выбора генерится соответствующий метод с соблюдением приватности и имена атрибутов, например так:

Автоформатирование кода

По-умолчанию, нажатие хоткея форматирует файл целиком. Если выбрать область, то форматируется только selection. Если выбрать в дереве папку или весь проект, можно сразу привести в порядок всё сразу.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Подсказки (Code Completition)

Важной функцией IDE является способность подсказывать названия и атрибуты методов. Особенно это важно для ООП, когда цепочки по 3-4 наследующихся класса способны запутать кого угодно.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Для функций нужно писать PHPDoc с параметром @ return. Например:

Для переменных также можно указать комментарий:

Для методов над классом можно указать PHPDoc

Если функция возвращает массив объектов

Задачи (tasks)

Использование систем контроля версий уже давно стало признаком хорошего тона. Но часто бывает проблема, когда работа ведется над несколькими задачами параллельно или прибегает кто-то и срочно просит исправить воооот этот баг прям-вот-щяс. Очень легко можно забыть закоммитить нужный файл или наоборот, в коммит попадают лишние файлы или изменения которых там быть не должно.

Избежать этого и внести порядок в работу можно с помощью Tasks. Суть в том, что у каждой задачи есть свой Change-лист, в котором указаны файлы с изменениями и переключаясь между задачами сразу видно, с какими файлами работали по этой задаче и что нужно не забыть.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Другой положительный момент, что IDE предупреждает, если вы в рамках одной задачи начинаете править файл, уже затронутый в другой.

Добавляет удобства, что при коммите в него автоматически попадают все файлы из текущего change-листа + в комментарий подставляется название задачи.

Хорошо если у вас уже есть багтрекер типа Jira или Redmine, если нет, на том же GitHub есть довольно простая система баг-трекинга, также поддерживаемая PHPStorm. Это позволяет подгрузить номер, название и описание уже существующей задачи по которой вы работаете прямо в IDE, хотя ничто не мешает не пользуясь трекером создавать произвольные change-листы.

FTP, деплой и автодеплой

Со многими проектами работа ведется по FTP или SFTP. PHPStorm имеет удобный функционал для работы с ними. Сохранив доступы к серверу и настроив mapping появляется возможность выгружать и загружать (upload & download) файлы на сервер нажатием одного хоткея. Чтобы работало — нужно не забыть тыкнуть «use this server as default»

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Почему-то для Mac не заданы хоткеи по умолчанию для этих действий, но в Keymap можно их задать (спасибо Кэп). Я поставил следующие:
• Upload to Default Server: [CTRL] + U
• Download from Default Server: [CTRL] + D
(привел их для удобства поиска в Keymap + на мой взгляд легко запоминается)

Тут сказывается удобство того, что PHPStorm при нажатии [CMD] + S сохраняет сразу все файлы, т.к в результате процедура сохранения и аплоада совмещаются в одну.

Теперь можно не заботится всё ли загружено и ничего ли не забыто.

Консоль

Многие фреймворки используют консоль для быстрого выполнения частых действий. Для Symfony, Zend и других популярных фреймворков PHPStorm поддерживает подсказки и автодополнение консольных команд в Command Line Tools Console [CMD] + [SHIFT] + X

Но ничто не мешает сделать такое же и для своего проекта или частоупотребляемых команд UNIX или GIT, для этого нужно выбрать исполняемый файл и создать специальный XML файл вида:

Подробное описание как это делается вот тут: devnet.jetbrains.net/docs/DOC-1230

Разновидности поиска

[CMD] + N – Find by Class Name

Поиск по имени класса. Удобно в больших проектах, когда всё зарыто вглубь директорий или просто неизвестно где находится. Убойности добавляет «умный поиск», т.к. ищется как по части названия класса, так и по первым буквам, например SomeVeryLongClass будет найден по «SVLC». Учитывает регистр букв, будьте внимательны.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

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 подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Убрать рамку с подписями вкладок

В нижнем левом углу есть кнопка, позволяющая убрать рамки для боковых и нижних вкладок. Сами вкладки можно открывать по сочетаниям [CMD] + 0-9, но некоторые вкладки не имеют цифры. В таком случае поможет быстрое двойное нажатие (даблклик) [CMD], которое на время удержания показывает рамку с кнопками, в которые можно тыкать мышой.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Productivity Guide

В меню Help->Productivity Guide есть возможность посмотреть небольшую статистику про себя, а также список фич со статистикой их использования. Спасибо nxn

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Сравнение двух файлов

При выделении двух произвольных файлов в менеджере файлов появляется пункт «Compare Two Files», который показывает их в встроенном дифф-вьювере и позволяет переносить изменения из одного файла в другой. Спасибо pro100tak

Метки в проекте

С помощью [CTRL] + [SHIFT] + 0. 9 можно оставлять метки. Вернуться на метку можно с помощью [CTRL] + 0. 9. Работает в контексте всего проекта. Спасибо ualinker

Интересные хоткеи из комментариев

[CMD] + [ALT] + T (WIN: CTRL + ALT + T)
Окружение выделения предзаданными штуками, типа тегов или if-else, в зависимости от контекста. Спасибо happyproff

[CMD] + [F12] (WIN: CTRL + F12)
Структура текущего класса с поиском и опциональным отображением унаследованных членов
Аналог вкладки Structure, только во всплывающем окне. Спасибо happyproff

[ALT] + [Home] — быстрая навигация по пути к файлам. Спасибо develop7
phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

[CMD] + [SHIFT] + A — поиск по командам IDE

Источник

PhpStorm 2020.3: PHP 8, атрибуты, PHPStan и Psalm, Xdebug 3, Tailwind CSS и совместная разработка

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

PHP 8

PHP 8.0 выпущен. Большое спасибо всем контрибьюторам и менеджерам релиза!

PhpStorm 2020.3 поддерживает все последние изменения языка. Давайте рассмотрим, что доступно и как это использовать в IDE.

Версия языка в статусбаре

Теперь в статусной строке всегда отображается текущая версия PHP проекта. Оттуда же можно переключить версию.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Если переключатель не активен, это означает, что ограничение на версию PHP задано в composer.json.

Именованные аргументы

В PHP 8 аргументы функций и методов могут передаваться путем указания имени параметра. Вызовы теперь автоматически задокументированы, а необязательные параметры стали необязательными в полном смысле слова.

С помощью квик-фикса Add name identifiers можно добавить имена к аргументам:

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Опечатки или ошибочные имена аргументов подсвечиваются:

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Если передаваемое значение совпадает со значением параметра по умолчанию, то его можно смело удалить:

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Вместо массива options для передачи набора параметров можно использовать именованные аргументы, просто передавая только необходимые. Аргументы, передаваемые таким образом, в отличие от элементов массива, являются типобезопасными.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Атрибуты

Атрибуты — это новый, структурированный способ указания метаданных в PHP вместо комментариев PHPDoc.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

А вот PhpStorm провалидирует все в редакторе, не запуская Reflection API. При этом проверяются следующие правила:

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Вот атрибуты в действии с Symfony:

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Штормовские атрибуты PHP 8

Их сразу же можно использовать в своей кодовой базе, ничего не подключая.

#[Deprecated]

Используйте этот атрибут как PHPDoc-тег @deprecated, чтобы пометить методы, классы или константы классов, которые будут удалены в будущем.

Преимущество тут в том, что можно указать замену для устаревшего кода и пользователю будет проще обновиться.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

#[ArrayShape]

Этот атрибут полезен для работы с простыми структурами данных или объектоподобными массивами, когда по какой-то причине нельзя объявить класс.

Синтаксис вот такой:

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Массив, который определяет «форму», можно вынести в константу и переиспользовать:

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

К счастью, синтаксис однострочных атрибутов обратно совместим. То есть, если записать #[ArrayShape] в одну строку в проекте на PHP 7, то интерпретатор PHP воспримет эту строку как комментарий.

#[Immutable]

Неизменяемые объекты не могут быть изменены после инициализации или создания. Их использование делает состояние программы более предсказуемым и облегчает отладку.

Атрибутом #[Immutable] можно пометить весь класс или конкретные свойства, чтобы показать, что они не могут быть изменены.

PhpStorm будет проверять использование таких объектов и свойств и подсвечивать попытки изменения.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Этим атрибутом помечаются чистые функции, то есть те, которые не производят никаких побочных эффектов. Такие функции можно безопасно удалить, если результат их выполнения впоследствии не используется.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Если функция помечена как чистая, но в ее теле есть попытка изменить что-то за пределами из внешнего скоупа, то PhpStorm подсветит небезопасный код.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Все стандартные чистые функции PHP уже помечены этим атрибутом в PhpStorm.

#[ExpectedValues]

С помощью этого атрибута можно указать, какие значения функция принимает в качестве параметров, а какие может возвращать.

Например, рассмотрим функцию count:

Вот как атрибут #[ExpectedValues] улучшит ситуацию:

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

То есть появилось автодополнение, а если передано что-то другое, то подсвечивается ошибка.

Еще один пример #[ExpectedValues]

Возьмем хелпер response() из Laravel. В качестве второго параметра он принимает статус код HTTP.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Давайте исправим это, добавив атрибут #[ExpectedValues(valuesFromClass: Response::class)]

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

#[NoReturn]

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

#[Language]

Этот атрибут можно добавить к строковым параметрам, в которых ожидается текст на каком-либо языке, например RegExp, SQL, DQL и так далее.

Для аргументов появится подсветка и дополнительные возможности.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Вернемся к новым возможностям PHP 8.

Объявление свойств в конструкторе

Обычные свойства можно преобразовать в promoted или обратно с помощью квик-фикса Convert to promoted property.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском
phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Если свойство объявлено новым способом, но в теле конструктора осталась инициализация, то PhpStorm предложит ее удалить.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Выражение match

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Может быть трудно увидеть неправильное использование нового выражения, поэтому PhpStorm подсветит все ошибки.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском
phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Будут обнаружены дублирующиеся значения в условиях:

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Выражение match с одной веткой и веткой по умолчанию может быть безопасно заменено на тернарное выражение.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

А если осталась только ветка по умолчанию, то соответствие match вообще не понадобится.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Наконец, если в разных ветвях одинаковые тела, они могут быть объединены.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Оператор nullsafe

PhpStorm проверит правильность использования оператора:

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Висячая запятая

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Non-capturing catches

В PHP 8 можно ловить исключение в catch-блоке без переменной.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Выражение throw

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Можно использовать сокращение thr и нажать tab — это live template.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Константа ::class на объектах

Собственно, по нажатию Alt+Enter такую замену и можно сделать. Неправильное использование константы ::class PhpStorm подсветит.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Новые функции для строк: str_contains(), str_starts_with(), str_ends_with()

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Есть также новые str_starts_with() и str_ends_with() для определения того, начинается или заканчивается ли строка определенной подстрокой. PhpStorm подсвечивает, где вызовы substr() можно заменить новыми альтернативами:

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Reclassified engine warnings

В PHP 8 для многих ошибок был пересмотрен тип бросаемого предупреждения. А именно, вместо Notice во многих случаях будет Exception или Type Error.

В PhpStorm в связи с этим некоторые инспекции имеют два разных уровня severity: для PHP 8 и для более старых версий.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Это все из наиболее заметного по PHP 8. Есть еще целая куча изменений помельче, которые будут видны при обновлении на PHP 8.

Поддержка Psalm и PHPStan

Оба статических анализатора можно использовать в PhpStorm 2020.3 для подсветки проблем непосредственно в редакторе.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Оттуда можно перейти к настройкам инспекции и включить подсветку в редакторе. Это делается выбором соответствующей инспекции в списке PHP | Quality tools в Settings/Preferences | Editor | Inspections.

Лучше включить только один из инструментов, а не оба одновременно.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Тут же можно указать путь к конфигурационному файлу и настроить аргументы командной строки.

Когда все настроено, откройте любой файл, и вы увидите подсветку от статических анализаторов. Может быть небольшая задержка перед тем, как появится подсветка.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Аннотации

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Поддержка типов

Добавили поддержку некоторых типов Psalm и на основе информации из тегов улучшили наш вывод типов. Это сделало более точными проверки, генерацию кода и автодополнение.

Псевдотипы
Поддерживаются псалмовские псевдотипы, такие как scalar, numeric и т. п.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Константы в типах
Поддерживаются объединения констант и указание через * в тегах param и var.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Тайпхинты для массивов
Описания массивов array тоже поддерживаются, в том числе вложенные.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Дженерики и @tempate
Поддержка дженериков — фича для продвинутых пользователей, у которой нет полной корректной спецификации и много граничных случаев. Тем не менее мы решили реализовать базовую поддержку для @template на основе синтаксиса Псалма, чтобы посмотреть, как это будет использоваться.

Пока поддерживается только самый примитивный случай, когда функция возвращает один из своих параметров.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Эта поддержка дженериков является очень базовой, ее можно считать экспериментальной. Хотим понять, как это будет использоваться и что нужно реализовать в первую очередь. Будем рады обратной связи, особенно в виде реальных примеров использования в наш трекер.

Xdebug 3

Обновился популярный отладчик для PHP, теперь он значительно быстрее в работе и проще в настройке. Более подробно об Xdebug 3 читайте в документе Upgrade guide.

Чтобы сконфигурировать Xdebug 3, теперь достаточно одной опции xdebug.mode (например так XDEBUG_MODE=debug ).

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Улучшения отладчика

Возможности по отладке в PhpStorm расширились двумя новыми фишками.

Интерактивные хинты
Теперь в отладочном режиме вывод переменных можно развернуть, чтобы увидеть все поля. Тут же можно и изменить значения.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Inline Watches
В предыдущих версиях можно было добавить переменную или выражение в список watch и наблюдать, как меняется значение по шагам.

В PhpStorm 2020.3 можно добавлять вотчи непосредственно в контексте, и они будут отображаться рядом с кодом.

Нажмите Add as Inline Watch в попапе на хинте.
phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Или нажмите Add Inline Watch в контекстном меню редактора.
phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Или выделите переменную и в контекстном меню выберите Add Inline Watch.
phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Подсветка и переименование переменных в Twig

Выберите переменную или поместите на нее курсор, и все ее использования в шаблоне будут подсвечены. А чтобы переименовать все вхождения, нажмите Shift + F6.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Совместная разработка – Code With Me

В PhpStorm 2020.3 встроен плагин Code With Me — новый инструмент JetBrains для совместной разработки и парного программирования. С помощью него можно расшарить открытый проект с другими пользователями и работать над ним вместе в режиме реального времени. Подробнее про Code With Me в этих постах.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

HTTP-клиент

Интеграция Guzzle с HTTP-клиентом в PhpStorm

Guzzle — один самых популярных HTTP клиентов для PHP. Представьте, что где-то в коде есть HTTP-запрос и хочется его потестировать, не запуская сам код. Раньше пришлось бы копировать все параметры вручную.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Теперь из редактора запрос можно запустить и поиграться с ним, а затем сохранить его как http-файл в проекте.

Копировать HTTP-запрос в cURL

Чтобы экспортировать HTTP-запрос в cURL-строку, нажмите Alt+Enter на запросе в редакторе и выберите Convert to cURL and copy to clipboard. Теперь его можно вставить в терминал, документацию или любой инструмент тестирования API.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Редактор

Улучшения для Markdown

Для описания диаграмм и графиков можно использовать синтаксис Mermaid.js в markdown-файлах. PhpStorm теперь умеет рендерить превью для них прямо в редакторе. Включается в Preferences/Settings | Languages & Frameworks | Markdown.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Настраивается в Preferences/Settings | Editor | Code Style | Markdown.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

И наконец, если нажать кнопку Auto-Scroll Preview в правом верхнем углу редактора, то прокрутка превью и текста будет синхронизирована.

Улучшена проверка орфографии и грамматики

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Сплит редактора перетаскиванием

Чтобы открыть несколько файлов бок о бок, просто перетащите вкладку в нужный угол экрана.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Есть еще один способ открыть файл в сплит-режиме — Shift+Enter.
Комбинацию можно нажать на выбранном файле в Project view или в результатах поиска по файлам.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Вкладка предпросмотра

Если нужно быстро просмотреть файлы, то теперь не обязательно открывать каждый в отдельной вкладке. Можно использовать новую вкладку Preview tab.

Чтобы включить ее, нажмите на шестеренку в Project view и выберите Enable Preview Tab и Open Files with Single Click.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Еще можно просматривать файлы нажатием пробела в Project view, не открывая их.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Улучшения для Search Everywhere

Результаты сгруппированы по релевантности:
phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Можно делать простые математические операции и не открывать гугл калькулятор:
phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Можно искать по истории Git:
phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Автоматическое переключение на светлую или темную тему

В Preferences/Settings | Appearance & Behavior | Appearance | Theme выберите Sync with OS.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Новый набор горячих клавиш для macOS

Альтернативная раскладка горячих клавиш для macOS минимизирует использование функциональных клавиш, чтобы не надо было растягивать руку на всю клавиатуру при совершении основных действий. Например, вместо Fn+Shift+F6 для Rename рефакторинга используется ⌥+⌘+R.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Слова вместо иконок для горячих клавиш macOS

Можно сделать так, чтобы вместо иконок типа ⌥ ⌘ отображались слова Alt, Cmd и т. п.

Включается в секции Registry опцией ide.macos.disable.native.shortcut.symbols. Чтобы получить доступ к реестру, используйте Find Action Cmd+Shift+A и напишите там Registry.

Установить PhpStorm как приложение по умолчанию для разных файлов

В Preferences | Settings / Editor / File Types нажать Associate file types with PhpStorm…. В диалоговом окне выберите расширения для файлов, и они будут открываться в PhpStorm.

На macOS требуется перезагрузка.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Шаблоны могут генерировать несколько файлов

Можно одновременно сгенерировать сразу несколько файлов, например скелет для модуля или комбо контроллер-вью.

В Preferences / Settings | Editor | File and Code Templates нажать на phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском, чтобы создать новый шаблон, а затем нажать на иконку Create Child Template File phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

А вот пример того, как сгенерировать контроллер и шаблон в Symfony:

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Поддержка Git stage

Включить можно чекбоксом Enable staging area в Preferences/Settings | Version Control | Git.

В окне инструментов Commit (Cmd+0 / Alt+0) появятся две группы файлов: staged и unstaged.

Чтобы добавить файл в staged, нажмите на + напротив него.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Или можно выбрать конкретные строки и добавить их иконкой в редакторе. В этом случае можно закоммитить часть изменений из файла, а над остальными продолжить работу.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Инструменты БД

PhpStorm «из коробки» включает в себя возможности DataGrip, которые охвачены в обзоре релиза DataGrip 2020.3 от наших коллег.

SQL для MongoDB

Теперь можно использовать SQL-запросы к MongoDB. PhpStorm 2020.3 поддерживает SELECT- запросы с JOIN , WHERE , GROUP BY , HAVING , ORDER BY , LIMIT , OFFSET и всеми функциями MongoDB кроме map, reduce, filter и let. Подробнее в блог-посте.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Tailwind CSS

PhpStorm дополняет классы Tailwind в HTML-файлах и после директивы @apply. А также предоставит автодополнение псевдо-классов.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

Если навести указатель на класс в HTML и CSS файлах, то отобразится предпросмотр полученного CSS. Предпросмотр также доступен при автодополнении кода, во всплывающем окне документации F1 / Ctrl+Q.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

PhpStorm поддерживает настройки из tailwind.config.js. Например, если определить тему с новыми цветами, то во всплывающем окне автодополнения будут созданные классы с именем кастомного цвета.

phpstorm подсказки по функциям php на русском. Смотреть фото phpstorm подсказки по функциям php на русском. Смотреть картинку phpstorm подсказки по функциям php на русском. Картинка про phpstorm подсказки по функциям php на русском. Фото phpstorm подсказки по функциям php на русском

А вот видеоролик (на английском) с демонстрацией главных фич релиза:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *