Vscode php launch json

VS Code как IDE для PHP

Visual Studio Code при помощи встроенных возможностей, сторнних расширений и библиотек PHP можно превратить в полноценную IDE для разработки на PHP.

Visual Studio Code при помощи встроенных возможностей, сторонних расширений и библиотек PHP можно превратить в полноценную IDE для разработки на PHP.

В статье рассмотрен лишь тот набор расширений/модулей, с которым работает автор статьи, на самом деле расширений много и у рассмотренных расширений есть аналоги.

  • удобство написания кода:
    • автодополнение, статический анализ и навигация по коду
    • стандартизация оформления кода

    #Написание кода

    • автодополнение кода (даже юзерского)
    • навигацию по коду (горячими клавишами или через контекстное меню)
    • статический анализ и подсветку некорретного кода, на основании анализа

    Все это на основании той версии PHP которая будет выбрана в настройках расширения. Можно установить так:

    Есть настройки, но пользоваться можно сразу после установки.

    Расширение PHP Namespace Resolver используется для удобного импорта namespace (причем с сортировкой) и создания новых пространств имен из файлов. Настроек не много. Мелочь, но +5 к удобству.

    Расширение PHP DocBlocker предоставляет функционал для удобного и автоматического комментирования DocBlock.

    Расширение phpcs предоставляет возможность оформлять код в соответсвии с выбранным стандартом. Неверно составленный код будет подсвечиваться.

    Для настройки phpcs нужно установить расширение для VS Code (по ссылке выше) и пакет php_codesniffer для Composer:

    composer require --dev squizlabs/php_codesniffer 

    Затем обзательно в настройках расширения нужно выбрать стандарт ( PEAR , PHPCS , PSR1 , PSR2 , PSR12 , Squiz , Zend ), для этого в конфиге необходимо указать ключ:

    Intelephense подскажет какие классы/функции не подключены к файлу, Namespace Resolver позволит их импортировать в пару кликов мыши, а DocBlock поможет прокомментировать свой код чтобы Intelephense мог в любом месте показать подсказку по этому коду. phpcs позволит составить код в одном из выбранных стандартов.

    Каждое расширение можно настроить глобально или для текущего проекта. Настройки для текущего проекта будут храниться в директории .vscode/settings.json относительно корня проекта.

    #Статический анализ

    Статических анализаторов для php, есть несколько (ссылка на почитать), я использую phpstan, причина одна — с него начал, его и дальше использую.

    В минимальном варианте достаточно установить пакет phpstan/phpstan через Composer:

    composer require --dev phpstan/phpstan 

    И через терминал можно запускать так ([[https://phpstan.org/user-guide/command-line-usage ссылка на документацию]]):

    vendor/bin/phpstan analyse -l 9 src 

    А для отображения результатов работы статического анализатора phpstan в интерфейсе VS Code, нужно установить расширение phpstan, создать конфиг phpstan.neon (ссылка):

    parameters: level: 6 paths: - src 

    И в конфиг .vscode/settings.json добавить путь до phpstan:

    #Отладка

    Расширение PHP Debug в совокупности с модулем PHP xdebug позволяют производить отладку PHP кода. Можно построчно выполнить файл, просмотреть стек вызовов и значения переменных. При этом запускать можно как отдельный файл, так и целый сайт о_О.

    # для текущей версии php apt install php-xdebug # для конкретной версии php apt install php7.3-xdebug 

    Теперь открываем файл /etc/php/VERSION/mods-available/xdebug.ini :

    zend_extension=xdebug.so xdebug.remote_handler = dbgp xdebug.client_host = localhost xdebug.client_port = 9005 xdebug.mode=coverage,debug xdebug.start_with_request = yes 

    Теперь в корне проекта создаем .vscode/launch.json со следующим содержимым:

    < "version": "0.2.0", "configurations": [ < "name": "Listen for Xdebug", "type": "php", "request": "launch", "port": 9005, >, < "name": "Launch currently open script", "type": "php", "request": "launch", "program": "$", "cwd": "$", "port": 0, "runtimeArgs": [ "-dxdebug.start_with_request=yes" ], "env": < "XDEBUG_MODE": "debug,develop", "XDEBUG_CONFIG": "client_port=$" > > ] > 

    Здесь создается 2 конфигурации:

    • Listen for Xdebug — прослушивать xdebug. Если в текущем проекте, в каком-то файле поставить брекпоинт и запустить файл на исполнение (((из консоли или из браузера через локальный веб-сервер))) тогда отладчик остановится в скрипте на брекпоинте.
    • Launch currently open script — запустить текущий файл на исполнение и отладку.

    Значение ключа port из конфигурации Listen for Xdebug должно быть точно таким же как и в конфиге модуля PHP xdebug xdebug.client_port .

    Вообще-то расширение PHP Debug по умолчанию предусматривает еще один конфиг Launch Built-in web server для запуска встроенного веб-сервера, но в моем случае это не нужно, так как использую локальный LAMP, а теперь вообще все в Docker и такая отладка в Docker.

    #Тестирование

    Расширения для минимизации действий по запуску тестиров кода показались мне избыточны, потому что Visual Studio Code предоставляет функционал custom tasks, при помощи которого можно все это организовать.

    Предположим что проект использует composer и PHPUnit (хотя вовсе необзяательно), а тесты находятся в директории tests .

    Создадим файл относительно корня проекта .vscode/tasks.json и запишем в него следующее:

    Здесь происходит создание двух заданий:

    • Run unit tests all — запуск тестирования всей директории
    • Run unit test current file — запуск текущего открытого файла на тестирование

    Теперь идем в Terminal => Run Task , затем из появившего списка выбираем нужное задание.

    #Итог

    Такими не сложными действиями мы превратили редактор кода «»Visual Studio Code в полноценную IDE для разработки проектов на PHP»». Не все инструменты рассмотрены полностью, некоторые лишь очень поверхностно, но дальнейшую тонкую настройку оставляю в качестве домашнего задания 🙂

    В телеграм канале DevOps от первого лица можно оставить комментарий или почитать интересные истории из практики DevOps

    Источник

    Настройка редактора Visual Studio Code для разработки на PHP

    Пора перейти от слов к действиям и познакомиться с Visual Studio Code поближе. В этом посте представлена поэтапная настройка VS Code для разработки на PHP.

    1. Скачать и установить Visual Studio Code.
    2. Настройть статистический анализ кода на PHP в параметрах пользователя.
    3. Скачать и установить расширение PHP Debug с портала Visual Studio Marketplace.
    4. Настройть расширение PHP Debug для использования XDebug.

    Скачайте и установите Visual Studio Code

    • Бесплатный: да, VS Code полностью бесплатен, никаких приписок мелким шрифтом.
    • Кроссплатформенный: доступны версии VS Code для Windows, Linux и OS X.
    • Легковесный: VS Code, в отличие от Visual Studio, — не полнофункциональная среда IDE, а редактор кода. Он поддерживает ряд мощных функций, характерных для IDE, например, IntelliSense, отладку и интеграцию с системой управления исходным кодом Git.

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

    image

    Если вы откроете файл с расширением .php, Code поймет, что это файл на языке PHP. Тип файла можно изменить и вручную: щелкните кнопку Language Mode в правом нижнем углу окна редактора или последовательно нажмите клавиши Ctrl+K и M.

    image

    Встроенные функции работы с PHP

    VS Code поддерживает множество языков, в том числе PHP. На портале Visual Studio Marketplace доступны расширения VS Code, обеспечивающие поддержку дополнительных языков. Для PHP работает подсветка синтаксиса, определение парных скобок и фрагменты кода.

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

    image

    Настройка статического анализа PHP

    По умолчанию VS Code будет проводить статический анализ кода на PHP в ходе проверки при сохранении файла. Для этого используется исполняемый файл php. Если вы работаете с VS Code впервые, то получите сообщение об ошибке, в котором сказано, что исполняемый PHP файл не обнаружен.

    image

    Необходимо указать путь к исполняемому файлу PHP на вашем компьютере. Для этого следует изменить файл настроек (в VS Code существуют различные уровни файлов настроек, подробнее см. в документации). В нашем примере мы настроим параметры PHP глобально для пользователя.

    Откройте пользовательские настройки с помощью панели команд: нажмите F1, введите «user» и нажмите Enter.

    image

    Откроется два документа JSON. В документе слева содержатся настройки по умолчанию, в документе справа — пользовательские настройки. В пользовательских настройках можно переопределить настройки по умолчанию. Чтобы включить статический анализ кода PHP, необходимо изменить значения трех параметров.

    image

    Чтобы настроить путь к исполняемому файлу PHP, укажите его в файле пользовательских настроек:

    image

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

    image

    Настройка отладки

    Расширение PHP Debug (спасибо Феликсу Беккеру!) добавляет в VS Code поддержку отладчика XDebug. Установите расширение через панель команд VS Code: нажмите F1, введите «install ext», нажмите Enter, введите «PHP Debug» и вновь нажмите Enter. После установки расширения может потребоваться перезапуск VS Code.

    image

    Обратите внимание: это расширение использует отладчик XDebug. Поэтому для его работы необходимо установить XDebug. Скачать XDebug можно здесь (для Windows выбирайте 32-разрядную non-thread-safe версию).
    Затем внесите в файл php.ini следующие настройки. Я установил XDebug в подкаталог ext установочной папки PHP. Если вы выбрали для XDebug другой каталог установки, убедитесь, что параметр zend_extension содержит правильное значение.

    image

    Убедитесь, что корневой раздел веб-сервера соответствует вашему проекту. Тогда при каждом запросе файла PHP XDebug будет предпринимать попытку подключения к порту 9000 для отладки.
    Чтобы начать отладку, откройте вкладку Debugging в VS Code.

    image

    Щелкните значок шестеренки, чтобы сформировать файл launch.json, который позволит VS Code начать сеанс отладки XDebug.

    image

    Чтобы начать отладку, нажмите F5 или щелкните зеленую стрелку на вкладке Debugging. Чтобы задать точку останова в исходном коде, выберите строку и нажмите F9.

    image

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

    image

    Заключение

    Visual Studio Code обладает отличной встроенной поддержкой PHP, а расширение PHP Debug добавляет возможность отладки кода на PHP. Все эти инструменты являются бесплатными и кроссплатформенными.

    На портале Visual Studio Marketplace доступны и другие расширения для работы с PHP.

    Полезные ссылки

    • Visual Studio 2015: бесплатные предложения для разработчиков
    • Дополнительные и бесплатные инструменты и службы в программе Visual Studio Dev Essentials
    • Лабораторные работы по разработке, тестированию и управлению жизненым циклом ПО для Visual Studio 2015

    Источник

    Читайте также:  Copy table in javascript
Оцените статью