- Saved searches
- Use saved searches to filter your results more quickly
- How to setting php.validate.executablePath? #533
- How to setting php.validate.executablePath? #533
- Comments
- PHP in Visual Studio Code
- Linting
- Windows
- Linux and macOS
- Snippets
- PHP extensions
- Disable built-in PHP support
- Debugging
- Next steps
- VS Code: базовые возможности для работы с языком PHP
- Как задать правильный путь в VSCode phpvalidateexecutablePath?
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How to setting php.validate.executablePath? #533
How to setting php.validate.executablePath? #533
Comments
How to setting php.validate.executablePath?
The text was updated successfully, but these errors were encountered:
I am sorry the file ext was wrong
dbaeumer added the *question Issue represents a question, should be posted to StackOverflow (VS Code) label Dec 11, 2015
What another settings do I need to debug php code?
There is currently no out of the box support to debug PHP. You might want to look if an extension is available.
Try that:
php.validate.executablePath=»C:/apps/php/php.exe»
How would I achieve this on my Mac running Mamp?
I’m trying
«php.validate.executablePath»: «~/Applications/MAMP/bin/php/php7.0.12/bin»
hi,
open file setting.json
«php.validate.executablePath»: «C:\xampp\php\php.exe»,
«php.executablePath»: «C:\php7.1\php.exe»
>
🙂
on mac,add setting to setton.json:
«php.validate.executablePath»: «/usr/local/php5-7.1.4-20170506-100436/bin/php»
@only1shirish super helpful, I couldn’t make sense of anything anyone was saying.
I have tried everything on here but it is still not debugging or running or doing anything really
________________________________ From: Dirk Bäumer
I went to my workspace settings and typed php.validate.executablePath: «c://Users/User01/data/php.exe» but its not working even then.
I’ve tried a few paths for PHP binaries on OS X, none of them seem to work. Visual Studio is finding PHP 5.6 somewhere on my computer and it’s sticking to it, regardless of my settings.
The error I get is «The language server needs at least PHP 7 installed. Version found: 5.6.30».
Here are the different paths I’ve tried to give it:
"php.validate.executablePath": "/Applications/MAMP/bin/php/php7.1.1/bin/php", "php.validate.executablePath": "/Applications/MAMP/bin/php/php7.1.1/bin/", "php.validate.executablePath": "/usr/local/Cellar/php71/7.1.0_11/bin/", "php.validate.executablePath": "/usr/local/Cellar/php71/7.1.0_11/bin/php",
Atom uses MAMP’s php binary just fine. Visual Studio Code ain’t having it. ¯_(ツ)_/¯
PHP in Visual Studio Code
Visual Studio Code is a great editor for PHP development. You get features like syntax highlighting and bracket matching, IntelliSense (code completion), and snippets out of the box and you can add more functionality through community-created VS Code extensions.
Linting
VS Code uses the official PHP linter ( php -l ) for PHP language diagnostics. This allows VS Code to stay current with PHP linter improvements.
Tip: Using XAMPP? Install the full version of PHP in order to obtain the development libraries.
There are three settings to control the PHP linter:
- php.validate.enable : controls whether to enable PHP linting at all. Enabled by default.
- php.validate.executablePath : points to the PHP executable on disk. Set this if the PHP executable is not on the system path.
- php.validate.run : controls whether the validation is triggered on save (value: «onSave» ) or on type (value: «onType» ). Default is on save.
To change the PHP settings, open your User or Workspace Settings ( ⌘, (Windows, Linux Ctrl+, ) ) and type ‘php’ to filter the list of available settings.
To set the PHP executable path, select the Edit in settings.json link under PHP > Validate: Executable Path, which will open your user settings.json file. Add the php.validate.executablePath setting with the path to your PHP installation:
Windows
"php.validate.executablePath": "c:/php/php.exe" >
Linux and macOS
"php.validate.executablePath": "/usr/bin/php" > or "php.validate.executablePath": "/usr/local/bin/php" >
Snippets
Visual Studio Code includes a set of common snippets for PHP. To access these, hit ⌃Space (Windows, Linux Ctrl+Space ) to get a context-specific list.
PHP extensions
There are many PHP language extensions available on the VS Code Marketplace and more are being created. You can search for PHP extensions from within VS Code in the Extensions view ( ⇧⌘X (Windows, Linux Ctrl+Shift+X ) ) then filter the extensions dropdown list by typing ‘php’.
Disable built-in PHP support
To disable the built-in PHP smart completions in favor of suggestions from an installed PHP extension, uncheck PHP > Suggest: Basic, which sets php.suggest.basic to false in your settings.json file.
Debugging
PHP debugging with XDebug is supported through a PHP Debug extension. Follow the extension’s instructions for configuring XDebug to work with VS Code.
Next steps
Read on to find out about:
VS Code: базовые возможности для работы с языком PHP
Текстовый редактор «Visual Studio Code» (сокращенно «VS Code») обладает базовой поддержкой языка программирования PHP, так сказать, «из коробки» (то есть эта возможность доступна пользователю сразу после установки редактора на компьютер, без дополнительных загрузок). Об этом рассказано в следующей статье на официальном сайте редактора:
Я открыл в редакторе «VS Code» папку («Файл – Открыть папку. ») с файлами и подпапками веб-приложения «WordPress», которая у меня на компьютере находится в следующем местоположении:
После этого дерево файлов и подпапок можно просмотреть в «Проводнике» («Вид – Проводник»). Вот как это выглядит у меня:
На иллюстрации выше видно, что всем файлам с расширением «.php» сопоставлена иконка с фиолетовым слоном (синий слон является официальным маскотом языка PHP, правда, в изображениях цвет не всегда используют синий).
Я щелкнул в «Проводнике» на имя одного из файлов с расширением «.php» и он открылся в окне справа от «Проводника»:
На иллюстрации выше видно, что автоматически сработала подсветка синтаксиса для языка PHP. В строке состояния редактора «VS Code» видно, что правильно определился языковой режим, так как там появилась отметка «PHP».
Перед дальнейшей работой с программами на языке PHP я бы рекомендовал заглянуть в «Параметры» (настройки редактора), относящиеся к настройке встроенных возможностей редактора для работы с языком PHP. Чтобы открыть окно настройки параметров, можно нажать комбинацию клавиш «Ctrl+,» (вторая клавиша в этой комбинации — запятая в латинской раскладке клавиатуры). После того, как окно параметров откроется, в строке поиска сверху можно набрать слово «php», чтобы отфильтровать только те параметры, которые содержат в своем названии это слово (регистр букв не имеет значения). Вот как это выглядит у меня:
На иллюстрации выше видно, что всего нашлось 5 подходящих настроек, в том числе 4 в разделе настроек, который называется «PHP». Эти четыре настройки нас сейчас и интересуют. На иллюстрации выше показано, как они настроены по умолчанию. Единственное, что сразу нужно сделать — настроить параметр с идентификатором «php.validate.executablePath» (он же — «PHP > Validate: Executable Path»). В этом параметре следует указать путь к исполняемому файлу «php.exe» в дистрибутиве интерпретатора PHP.
Чтобы настроить этот параметр, можно нажать на прилагающуюся ссылку «Изменить в settings.json». После этого в отдельном окне будет открыт файл настроек «settings.json», в который следует ввести нужную информацию. При этом следует отметить, что файлов настроек «settings.json» существует несколько на разных уровнях: на уровне пользователя, на уровне рабочей области (рабочей папки или папок), подробнее про это можно прочитать в статье «User and Workspace Settings» документации редактора.
Как видно на иллюстрации выше, у меня выбрана вкладка параметров «Пользователь», поэтому при нажатии на ссылку «Изменить в settings.json» будет открыт для редактирования файл настроек «settings.json» текущего пользователя компьютера. У меня этот файл хранится в следующем местоположении:
C:\Users\Илья\AppData\Roaming\Code\User\settings.json
По расширению файла должно быть понятно, что этот файл написан в формате JSON, для которого редактор «VS Code» тоже умеет делать подсветку синтаксиса и выдавать умные подсказки в ходе редактирования этого файла.
После открытия файла «settings.json» по вышеописанной ссылке «Изменить в settings.json» в файл автоматически будет добавлена нужная строка:
"php.validate.executablePath": ""
От нас требуется вписать путь к файлу «php.exe» внутрь кавычек, находящихся в конце этой строки. Тут есть одна важная тонкость с символом-разделителем папок при вводе пути к файлу «php.exe». В операционных системах «Windows» принято в качестве такого символа использовать символ обратной косой черты \ (backslash), но в данном случае использование этого символа в пути к файлу «php.exe» будет интерпретировано неверно. Вместо символа обратной косой черты \ здесь следует использовать символ косой черты / (slash). Вот как я ввел этот параметр у себя:
"php.validate.executablePath": "C:/Program Files/php-8.1.10-nts-Win32-vs16-x64/php.exe"
После ввода этого параметра файл «settings.json» следует сохранить, после чего его можно закрыть. После этого окно с параметрами тоже можно закрыть.
Настройка этого параметра нужна для автоматической проверки на правильность (linting) кода программ на языке PHP. Как видно из настроек выше, автоматическая проверка кода по умолчанию проводится при каждом сохранении («onSave») файла с расширением «.php».
Здесь описаны только некоторые встроенные возможности редактора «VS Code» по работе с программами на языке PHP. Но для редактора «VS Code» существует множество расширений для работы с языком PHP. Их очень легко можно найти, загрузить и установить с помощью магазина расширений («Вид – Расширения»).
Если вы загрузили и установили расширения, дублирующие встроенные возможности редактора «VS Code» по работе с языком PHP (то есть делающие то же самое, но лучше), то встроенные возможности можно отключить. См. настройки, описанные выше: для отключения нужно просто снять две первые галки.
Также я хочу еще изучить вопрос настройки работы с отладчиком для языка PHP. Но этот вопрос достоин отдельного поста.
Как задать правильный путь в VSCode phpvalidateexecutablePath?
Доброго времени суток, столкнулся со следующей ситуацией. Изучаю PHP (7.1), пишу в Visual Studio Code и использую OpenServer, до недавнего времени не испытывал нужды в отладке и терминале, игнорировав их. Сейчас начал работу с Composer, библиотеками и фреймворками, так что потребность в терминале и отладке появилась. Установил расширение PHP Debug, Xdebug вроде как тоже(Потом оказалось, что он и так предустановлен в ОпенСервере). Все, что требуется, исправил в php.ini и settings.json, но VSC все время выбивает следующее: «Не удается проверить, так как C:\Users\имяпользователя\Program Files (x86)\OpenServer\modules\php\PHP_7.1\php.exe не является допустимым исполняемым PHP-файлом. Используйте параметр php.validate.executablePath, чтобы настроить исполняемый PHP-файл». Бьюсь без преувеличения третий день. Сама строчка в settings.json выглядит так:
"php.validate.executablePath": "C:\\Users\\имяюзера\\Program Files (x86)\\OpenServer\\modules\\php\\PHP_7.1\\php.exe"
Если допустить, что я не накосячил в момент указания пути (несколько раз указывал по-всякому — без толку) и что моя версия PHP в Опенсервере совпадает с папкой, на которую я ссылаюсь (Вроде по всем прошелся — итог один), то на ум приходит только один вариант — OpenServer не дает студии обратиться к папкам у себя без прав администратора. Окей, исправил в свойствах корневой папки OpenServer-a доступ так, что теперь (вроде как) он работает и без прав админа, но Код все еще не может получить доступ. Летом с Питоном таких проблем не было, в json файле все еще висит
"python.pythonPath": "C:\\Users\\имяюзера\\AppData\\Local\\Programs\\Python\\Python38-32\\python.exe"
— и никто не ругается, всё работает. Буду очень признателен за помощь, ибо никаких рабочих рекомендаций для себя не нашел.
upd: решение более-менее найдено, если у кого схожая проблема, смотрите комментарии
Простой 7 комментариев