
Visual Studio Code поддерживает PHP из коробки, но для полноценной работы потребуется дополнительная настройка. Начать стоит с установки официального расширения PHP Intelephense – оно обеспечивает подсветку синтаксиса, автодополнение, переход к определению и отображение документации. После установки рекомендуется отключить встроенную поддержку PHP, чтобы избежать конфликтов: «php.validate.enable»: false в settings.json.
Для корректной работы расширений необходим установленный интерпретатор PHP. Проверьте его наличие командой php -v в терминале. Если команда не распознана, установите PHP и укажите путь в настройках VS Code: «php.executablePath»: «/usr/bin/php» или соответствующий путь для Windows.
Отладка возможна с помощью расширения PHP Debug. Оно требует установленного и настроенного Xdebug. После установки модуля Xdebug проверьте его подключение через phpinfo(). В конфигурации VS Code добавьте файл launch.json с типом конфигурации php. Убедитесь, что параметр xdebug.mode в php.ini содержит debug, а xdebug.client_port совпадает с портом в launch.json.
Для форматирования кода удобно использовать PHP CS Fixer. Установите его через Composer глобально или локально в проект. Добавьте в settings.json путь к исполняемому файлу и настройте автоформатирование при сохранении: «editor.formatOnSave»: true, «php-cs-fixer.executablePath»: «./vendor/bin/php-cs-fixer».
Для работы с Composer удобно использовать расширение Composer Extension. Оно упрощает запуск команд, просмотр зависимостей и обновление пакетов прямо из интерфейса редактора.
Если проект использует Laravel, стоит установить Laravel Artisan, Laravel Blade Snippets и Laravel Extra Intellisense. Эти расширения ускоряют работу с шаблонами Blade, маршрутизацией и консольными командами.
Все изменения в settings.json рекомендуется делать через интерфейс VS Code: Cmd/Ctrl + Shift + P → Preferences: Open Settings (JSON).
Установка и настройка PHP-исполняемого файла в системе

Сначала необходимо скачать актуальную версию PHP с официального сайта php.net. Для Windows рекомендуется использовать архивную сборку (Non Thread Safe), так как она подходит для разработки. После загрузки распакуйте архив в каталог, например, C:\php.
Откройте свойства системы → «Дополнительные параметры» → «Переменные среды». В разделе «Системные переменные» найдите переменную Path и добавьте путь к каталогу с PHP, например C:\php. После сохранения изменений перезапустите терминал, чтобы обновить переменные окружения.
Создайте файл php.ini, скопировав php.ini-development и переименовав его. В этом файле задаются параметры, такие как error_reporting, display_errors и директивы расширений. Для корректной работы некоторых библиотек раскомментируйте строки extension=mbstring, extension=mysqli, extension=curl.
Для Linux установите PHP через пакетный менеджер. В Ubuntu выполните sudo apt install php. После установки проверьте версию через php -v. Конфигурационный файл находится по пути /etc/php/[версия]/cli/php.ini.
На macOS рекомендуется использовать Homebrew. Установите PHP командой brew install php. Проверьте версию: php -v. При необходимости добавьте путь к исполняемому файлу в .zshrc или .bash_profile.
Подключение расширения PHP Intelephense и базовая конфигурация
Откройте VS Code и перейдите в раздел Extensions (или используйте сочетание клавиш Ctrl+Shift+X). Введите PHP Intelephense в строке поиска. Установите расширение от автора Ben Mewburn. После установки рекомендуется перезапустить редактор.
Intelephense автоматически активируется при открытии файлов с расширением .php. Для корректной работы требуется наличие установленного PHP в системе. Проверьте это через терминал командой php -v. Если интерпретатор не обнаружен, настройте путь вручную в параметрах:
Откройте settings.json через команду Ctrl+Shift+P → Preferences: Open Settings (JSON) и добавьте:
{
"intelephense.environment.phpVersion": "8.1.0",
"intelephense.files.maxSize": 5000000,
"intelephense.diagnostics.enable": true,
"intelephense.stubs": [
"apache",
"bcmath",
"bz2",
"calendar",
"com_dotnet",
"Core",
"curl",
"date",
"dom",
"exif",
"fileinfo",
"filter",
"ftp",
"gd",
"gettext",
"hash",
"iconv",
"imap",
"intl",
"json",
"libxml",
"mbstring",
"mcrypt",
"mysqli",
"openssl",
"pcntl",
"pcre",
"PDO",
"pdo_mysql",
"Phar",
"readline",
"Reflection",
"session",
"SimpleXML",
"soap",
"sockets",
"sodium",
"SPL",
"standard",
"superglobals",
"tokenizer",
"xml",
"xdebug",
"xmlreader",
"xmlwriter",
"zip",
"zlib"
]
}
Параметр intelephense.environment.phpVersion указывает используемую версию PHP. files.maxSize регулирует максимальный размер индексируемых файлов. Список stubs задаёт доступные псевдо-модули для автодополнения и анализа.
Для ускорения индексации исключите ненужные директории:
{
"intelephense.files.exclude": [
"/vendor/",
"/node_modules/",
"/.git/"
]
}
Проверьте, что автодополнение, переход к определению, поиск по символам и проверка синтаксиса работают корректно. Если нет – удалите кэш расширения (.intelephense в корне проекта) и перезапустите VS Code.
Настройка автодополнения и анализа кода

Установите расширение PHP Intelephense через Marketplace. Оно обеспечивает поддержку автодополнения, перехода к определению, рефакторинга и встроенного анализа. После установки откройте настройки (Ctrl + ,), найдите «Intelephense: Environment» и проверьте, что указана правильная версия PHP. Если используется Composer, настройте путь к autoload-файлу: в settings.json добавьте ключ "intelephense.environment.includePaths" с путем к vendor.
Для анализа кода с учетом пользовательских настроек создайте файл php.intelephense в корне проекта. Пример настройки: отключение предупреждений о неиспользуемых переменных – "intelephense.diagnostics.undefinedVariables": false.
Если используется Laravel, добавьте расширение Laravel Extra Intellisense. Оно дополняет возможности Intelephense за счёт поддержки фасадов и макросов. Включите поддержку псевдонимов, указав в intelephense.stubs нужные библиотеки, например "Illuminate\Support\Facades\*" .
Чтобы исключить ненужные директории из анализа, добавьте в settings.json: "intelephense.files.exclude": ["/storage/", "/node_modules/"].
Для проверки на соответствие стандарту PSR установите расширение PHP CS Fixer. В настройках укажите путь к бинарнику и конфигурационному файлу, например: "php-cs-fixer.executablePath": "./vendor/bin/php-cs-fixer" и "php-cs-fixer.config": ".php-cs-fixer.dist.php".
Подключение Xdebug и отладка PHP-кода в VS Code

Для корректной работы отладки в VS Code потребуется установленный Xdebug, правильно настроенный php.ini и расширение PHP Debug.
- Откройте
php.iniи добавьте или раскомментируйте следующие строки:
; Путь к расширению Xdebug
zend_extension=xdebug.so ; или xdebug.dll на Windows
; Включение удалённой отладки
xdebug.mode=debug
xdebug.start_with_request=yes
xdebug.client_port=9003
xdebug.client_host=127.0.0.1
- Перезапустите веб-сервер или PHP-FPM, чтобы изменения вступили в силу.
- Установите расширение PHP Debug в VS Code (разработчик Felix Becker).
- Создайте файл
.vscode/launch.jsonв корне проекта, если он отсутствует:
{
"version": "0.2.0",
"configurations": [
{
"name": "Listen for Xdebug",
"type": "php",
"request": "launch",
"port": 9003
}
]
}
- Убедитесь, что используемый порт совпадает с
xdebug.client_port. - Установите точку останова в нужной строке PHP-файла.
- Запустите конфигурацию «Listen for Xdebug» в меню отладки VS Code (F5).
- Откройте страницу в браузере, которая вызывает соответствующий PHP-код. VS Code остановится на точке останова.
- Если используется браузер, настройте расширение для автоматической передачи cookie
XDEBUG_SESSION(например, Xdebug helper для Chrome).
Для CLI-скриптов отладка работает, если выполнить команду с установленной переменной окружения:
XDEBUG_MODE=debug php script.php
Если отладка не срабатывает, проверьте:
- что порт 9003 не занят
- что Xdebug загружается только один раз
- что путь к исходникам в VS Code совпадает с тем, что исполняется
Настройка проверки синтаксиса с помощью PHP-CS-Fixer

Установите PHP-CS-Fixer глобально через Composer:
composer global require friendsofphp/php-cs-fixer
Убедитесь, что путь к ~/.composer/vendor/bin (или ~/.config/composer/vendor/bin в зависимости от системы) добавлен в PATH.
Создайте файл .php-cs-fixer.dist.php в корне проекта. Пример содержимого:
<?php
return PhpCsFixer\Config::create()
->setRules([
'@PSR12' => true,
'array_syntax' => ['syntax' => 'short'],
])
->setFinder(
PhpCsFixer\Finder::create()
->in(__DIR__)
);
Установите расширение PHP CS Fixer от Junstyle в VS Code.
Откройте настройки (Ctrl + ,), найдите «php-cs-fixer.executablePath» и укажите путь до бинарника, например:
~/.composer/vendor/bin/php-cs-fixer
Задайте форматирование при сохранении:
В settings.json добавьте:
{
"editor.formatOnSave": true,
"php-cs-fixer.onsave": true,
"php-cs-fixer.rules": "@PSR12"
}
Для запуска вручную используйте командную палитру VS Code: PHP CS Fixer: Fix this file.
Если VS Code не находит бинарник, проверьте права доступа и корректность пути в настройках.
Работа с Composer через терминал VS Code
Установка Composer в системе: откройте терминал и выполните команду composer --version. Если Composer установлен, терминал выведет его версию. Если нет, скачайте установочный файл с официального сайта https://getcomposer.org и следуйте инструкциям для вашей операционной системы.
После установки Composer, откройте проект в VS Code и откройте встроенный терминал с помощью сочетания клавиш Ctrl + `. Теперь вы можете использовать все возможности Composer прямо из VS Code.
Основные команды для работы с Composer:
composer install– загрузка всех зависимостей, указанных вcomposer.jsonпроекта.composer update– обновление зависимостей до последних доступных версий.composer require пакет– добавление новой библиотеки в проект.composer remove пакет– удаление библиотеки из проекта.
Настройки и конфигурация: Composer использует файл composer.json для описания зависимостей проекта. Убедитесь, что этот файл находится в корне вашего проекта. Для работы с Composer в терминале VS Code не нужно дополнительных настроек, если Composer установлен корректно.
Проблемы с правами доступа: если при выполнении команд Composer появляются ошибки, связанные с правами доступа, попробуйте добавить перед командами sudo на Unix-системах или запустите VS Code с правами администратора на Windows.
Полезные плагины для VS Code: для удобной работы с Composer можно установить расширения, такие как PHP Intelephense или Composer, которые позволяют быстро обновлять зависимости и управлять ими из редактора, не переключаясь на терминал.
Создание задач для автоматизации рутинных действий

Для повышения эффективности работы с PHP в VS Code можно настроить задачи, которые автоматизируют рутинные действия. Это позволяет сэкономить время на выполнении повторяющихся процессов, таких как компиляция, запуск тестов или линтинг кода. Настроить такие задачи можно с помощью файла tasks.json.
Основные шаги для создания задач:
- Открытие настроек задач: Перейдите в меню
Terminal→Configure Tasksи выберитеTasks: Create tasks.json file from template. Для начала выберите шаблон, подходящий для вашего проекта (например,Others). - Конфигурация задачи: В файле
tasks.jsonопределите задачу с необходимыми параметрами. Вот пример настройки задачи для запуска PHP-скрипта:
{
"version": "2.0.0",
"tasks": [
{
"label": "Запуск PHP-скрипта",
"type": "shell",
"command": "php",
"args": [
"${workspaceFolder}/script.php"
],
"group": {
"kind": "build",
"isDefault": true
},
"problemMatcher": []
}
]
}
В этом примере задача запускает PHP-скрипт script.php в текущем рабочем каталоге. Параметр args указывает путь к файлу для выполнения.
- Добавление шагов в задачу: Вы можете добавлять несколько команд для выполнения различных операций в одной задаче. Например, сначала выполнить линтинг кода, а затем запустить тесты:
{
"version": "2.0.0",
"tasks": [
{
"label": "Линтинг и тесты",
"type": "shell",
"command": "php",
"args": [
"-l",
"${workspaceFolder}/src/Example.php"
],
"group": "build",
"problemMatcher": [],
"dependsOn": [
"Запуск тестов"
]
},
{
"label": "Запуск тестов",
"type": "shell",
"command": "phpunit",
"args": [
"${workspaceFolder}/tests/ExampleTest.php"
],
"problemMatcher": []
}
]
}
Задача Линтинг и тесты сначала выполняет линтинг файла Example.php, а затем запускает тесты через PHPUnit, благодаря параметру dependsOn.
Совет: Если вам нужно выполнить задачу с разными параметрами, используйте переменные VS Code. Например, можно заменить путь к файлу на переменную ${file}, чтобы запускать задачу для текущего открытого файла.
- Запуск задачи: Задачи можно запускать вручную с помощью команды
Terminal→Run Task, или использовать сочетания клавиш для быстрого выполнения.
Создание таких задач упрощает работу с проектами, особенно при регулярном выполнении однотипных операций. Также это помогает избежать ошибок, связанных с ручным вводом команд, и ускоряет процессы разработки.
Вопрос-ответ:
Как установить и настроить VS Code для работы с PHP?
Для начала установите сам редактор VS Code с официального сайта. Затем добавьте поддержку PHP, установив расширение PHP Intelephense через marketplace. Для этого откройте панель расширений в VS Code и найдите Intelephense. После установки, перезапустите редактор. Также потребуется настроить интерпретатор PHP, указав путь в настройках, если это не сделано автоматически. Путь можно задать через команду «php.validate.executablePath». После этого ваша среда готова для работы с PHP.
Нужно ли устанавливать сервер для работы с PHP в VS Code?
Да, для работы с PHP в VS Code желательно иметь сервер, который будет интерпретировать ваш код. Наиболее популярный вариант — это локальный сервер, такой как XAMPP или MAMP. Эти решения включают Apache и MySQL, а также сам PHP. После установки вы сможете запускать и тестировать свои PHP-скрипты на локальном сервере. Однако если вам нужно только редактировать код, можно обойтись и без сервера, но для полноценных тестов и разработки сервер необходим.
Как подключить отладчик в VS Code для PHP?
Для отладки PHP в VS Code вам нужно установить расширение PHP Debug. После его установки настройте файл launch.json для подключения отладчика. В нем укажите путь к вашему интерпретатору PHP и настройте параметры для подключения к серверу (если используете локальный сервер). Также нужно будет установить и настроить Xdebug — популярный отладчик для PHP. Подробности установки и настройки можно найти в документации расширения и на сайте Xdebug.
Какие плагины для работы с PHP в VS Code стоит установить?
Для удобной работы с PHP можно установить несколько полезных плагинов. Один из самых популярных — Intelephense, который предоставляет автозаполнение, подсветку синтаксиса и интеллектуальные подсказки. Для отладки можно установить PHP Debug. Также полезен плагин PHP DocBlocker, который автоматически генерирует docblock-комментарии для функций и методов. Если вы работаете с фреймворками, такими как Laravel, можно установить соответствующие расширения, чтобы улучшить поддержку этих технологий в редакторе.
