Перейти к содержимому

Php validate executablepath как задать

  • автор:

Форум

Здравствуйте. В мануале ничего не нашёл, прошу совета здесь.

Как сделать php openserver исполняемым в терминале VS Code?

Строка «php.validate.executablePath»: «E:\\OS\\OpenServer\\modules\\php\\PHP_8.0\\php.exe» в настройках редактора ситуации не меняет, добавление его в закладки openserver-a тоже.

Как быть? Не переключаться же постоянно между встроенным терминалом и редактором?

flipper Сообщения: 2 Зарегистрирован: 26 дек 2021, 18:44

Re: Терминал VS Code

Спасибо, что не ответили. А то, наверное, и дальше бы годами сидел на этих костылях вместо реального прокачивания скиллов в профессии

Максим Сообщения: 6028 Зарегистрирован: 11 дек 2010, 20:29

Re: Терминал VS Code

Думаю дело в том, что здесь банально никто не пользуется сием редактором, поэтому и ответить вам было некому. Сам ответ гуглится за минуту, полагаю скилл по поиску инфы в сети вам стоит прокачать в первую очередь

Как настроить VS Code для разработки на PHP

Vscode

Так может выглядеть интерфейс редактора после установки расширений

  • Основные возможности
  • EditorConfig for VS Code
  • PHP Intelephense
  • PHP Debug
  • PHP Sniffer
  • Semicolon Insertion Shortcut
  • Extra

Основные возможности

  • отладчик кода
  • встроенный терминал
  • удобные инструменты для работы с Git
  • подсветка синтаксиса для множества популярных языков и файловых форматов
  • удобная навигация
  • встроенный предпросмотр Markdown
  • умное автодополнение
  • встроенный пакетный менеджер

VS Code имеет большое количество расширений для разработчика. Для установки нового пакета зайдите во вкладку «Extensions», введите название пакета в строке поиска, нажмите кнопку «Install».

extension list

EditorConfig for VS Code

EditorConfig — это конфигурационный файл и набор расширений к большому количеству редакторов кода. Он подхватывает настройки из файла .editorconfig , который, как правило, размещается в корне проекта. Расширение автоматически настроит отступы и перевод строк единообразно для всех разработчиков, использующих его. PHP код чаще всего выполняется на *nix системах, поэтому необходимо использовать стандарт.

Ниже приводится пример файла .editorconfig , который используется в Laravel:

root = true # Глобальные настройки, которые будут записаны для всех файлов. [*] charset = utf-8 # На Unix системах используется lf для перевода строки. # Это также требование стандарта PSR. end_of_line = lf insert_final_newline = true indent_style = space indent_size = 4 trim_trailing_whitespace = true # Можно задать индивидуальные настройки как для типов файлов, # так и отдельных файлов по имени. [*.md] trim_trailing_whitespace = false [*. ] indent_size = 2 [ ] indent_style = space indent_size = 2 [lib/**.js] indent_style = space indent_size = 2 

PHP Intelephense

В редакторе уже есть поддержка синтаксиса и подсказок стандартных функций языка. Но без специального дополнения редактор не будет подсказывать пользовательские функции из других частей проекта. Поэтому для поддержки автодополнения, анализа кода, перехода к месту, где создана функция/класс/переменная (с помощью шортката Alt+Click ), используется дополнение PHP Intelephense

Чтобы подсказки не дублировались необходимо отключить встроенную в редактор поддержку кода для PHP: Extensions -> Search @builtin php -> PHP Language Features -> Disable

PHP Debug

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

Чтобы воспользоваться PHP Debug, необходимо установить сам XDebug, без него расширение для редактора работать не будет. Установив расширение, необходимо добавить конфигурацию для PHP в разделе Debug . После выбора языка в корне проекта будет создан файл .vscode/launch.json с задачами для Дебаггера. Расширение создаст файл со стандартными параметрами.

Для того, чтобы XDebug общался с нашим дебаггером, необходимо добавить настройки в файл конфигурации php. Чтобы найти этот файл выполните в терминале команду php —ini или запустите веб-сервер с кодом phpinfo() .

В Linux PHP подгружает не только основной файл, но и файл из этой директории. Например, на Ubuntu путь к директории конфигурационных файлов для PHP может быть таким — /etc/php/7.3/cli/conf.d/ . В ней создаём файл с необходимыми правами (требуются root права):

$ sudo touch /etc/php/7.3/cli/conf.d/99-local.ini $ sudo chmod 777 /etc/php/7.3/cli/conf.d/99-local.ini 
xdebug.remote_enable=1 xdebug.remote_host=127.0.0.1 xdebug.remote_port=9000 ; Порт, который мы указали в launch.json xdebug.idekey=code xdebug.remote_autostart=1 

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

PHP Sniffer

В языках программирования есть понятие стиль кодирования. Но не все разработчики знают об этом. Программа, которая отвечает за проверку на соответствие стандартам, называется линтер. В PHP приняты стандарты под названием PSR. Нас интересуют стандарты PSR-1 и PSR-12. Именно эти два стандарта касаются кодирования и правил оформления.

В PHP в качестве линтера используется PHP_CodeSniffer. Для его работы необходимо установить глобально сам линтер composer global require «squizlabs/php_codesniffer=*» и расширение PHP Sniffer.

Проверьте, что линтер установился:

$ phpcs --version PHP_CodeSniffer version 3.4.2 (stable ) by Squiz (https://www.squiz.net ) 

Выполнить проверку кода в терминале можно с помощью команды phpcs , явно указав стандарт, который мы хотим использовать, и путь для проверки:

$ phpcs --standard =PSR12 dirname > 

vscode-phpcs

Semicolon Insertion Shortcut

PHP требует разделять инструкции с помощью точки запятой. Расширение Semicolon Insertion Shortcut добавляет необходимый символ в конец строки с помощью шортката. Если при нажатии [Ctrl] + ; символ не вставляется, то необходимо проверить список горячих клавиш и при необходимости назначить комбинацию вручную: File -> Preferences -> Keyboard Shortcuts

semicolon-shortcut

Extra

Список расширений, которые могут быть использованы не только для PHP:

  • GitLens — в VS Code уже встроена поддержка Git. Но когда базовых возможностей становится недостаточно, на помощь может придти Gitlens. Например, одна из полезных фич — git blame на текущей строке.

gitlens

  • Indent Rainbow — разноцветные отступы в коде. Подсвечивает некорректный отступ. Можно вместо радуги установить оттенки серого.

rainbow

  • Settings Sync — плагин, позволяющий синхронизировать настройки редактора между разными компьютерами. В качестве облачного хранилища используется Github Gists. Все настройки можно скачать, указав нужный файл синхронизации.
  • Fira Code — моноширинный шрифт, в котором используются лигатуры (объединяет несколько символов в один) для общих комбинаций символов в программировании. Визуальная надстройка для более удобного чтения кода.

Как установить путь исполнения php php.validate.executablePath в vscode, когда php установлен внутри контейнера Docker?

У меня есть среда разработки, основанная на docker. Каждый раз, когда я открываю VSCode, я получаю это сообщение:

Невозможно проверить, так как не установлен исполняемый файл PHP. Используйте настройку ‘php.validate.executablePath’ для настройки исполняемого файла PHP.

Кто-то знает, как установить php.validate.executablePath в этом случае? Я не имею понятия, как это сделать. php docker validation visual-studio-code

Поделиться Источник 03 мая 2017 в 19:38

28 ответов

  • Не забудьте экранировать \
  • Вам не нужно добавлять его в путь

set php.validate.executablePath snapshot

Поделиться 18 сентября 2017 в 07:57

В моем случае использование XAMPP выглядит так

"php.validate.executablePath": "C:/xampp/php/php.exe" 

надеюсь, это ответит на ваш вопрос

Поделиться 20 июля 2020 в 06:20

Для пользователей Linux: если у вас нет установленного PHP, сначала загрузите его,
затем введите терминал

и он покажет путь для исполняемого файла php (он будет находиться либо в /usr/bin/php , либо в usr/local/bin/php ), который вы можете скопировать из терминала.

В VScode перейдите в файл settings.json и вставьте

Поделиться 25 сентября 2018 в 00:53

Конечно, просто. Просто следуйте тому, что там написано.

Перейдите в файл > Настройки > Настройки. он откроет файл settings.json.

добавьте следующий код:

Вам нужно знать, где находится файл php.exe на вашем компьютере, ищите в папке php/bin .

Надеюсь, это сработает для вас

Поделиться 18 мая 2017 в 16:38

У меня была та же проблема, но я нашел решение здесь.

  1. Перейдите в свойства системы
  2. Перейдите в расширенную вкладку
  3. Нажмите «Переменные среды»
  4. Выберите путь
  5. Добавьте новый путь, который указывает на ваш исполняемый файл php 7:

enter image description here

Поделиться 17 сентября 2017 в 16:24

В моем случае, я использую Laragon, поэтому вам следует искать, где находится ваш php.exe.

С помощью VSCode просто добавьте.

"php.executablePath": "C:\\laragon\\bin\\php\\php-7.2.19-Win32-VC15-x64\\php.exe" 

на settings.json.

Поделиться 27 марта 2020 в 12:20

Я просто использовал двойные прямые слэши и это сработало, вот так:

"php.validate.executablePath": "C:\\xampp\\php\\php.exe", 

Поделиться 02 мая 2020 в 05:56

«php.validate.executablePath»: «C:/php/php.exe» не будет работать из-за неправильного экранирования

"php.validate.executablePath": "C:\\php\\php.exe" 

Поделиться 29 сентября 2019 в 12:11

Если вы используете VScode и установили Php через MAMP, путь по умолчанию должен быть:

C:/MAMP/bin/php/php7.4.1/php.exe 

Поделиться 12 февраля 2021 в 14:21

VSCode Linux Пользователи:

Шаг 1: В вашем терминале введите

whereis php 

В моем случае «php: /opt/lampp/bin/php»

Поделиться 03 февраля 2021 в 10:20

Unix / Linux / Mac / WSL,

Шаг 1: Найдите путь PHP

whereis php 

Ответ покажет вам, где находятся ваши директории PHP.

user@User:~$ whereis php php: /usr/bin/php /usr/bin/php8.0 /usr/bin/php8.1 /usr/lib/php /etc/php /usr/share/php8.0-opcache /usr/share/php8.0-xml /usr/share/php8.1-curl /usr/share/php8.1-opcache /usr/share/php8.0-gd /usr/share/php7.0-gd /usr/share/php7.0-common /usr/share/php8.0-readline /usr/share/php8.0-mysql /usr/share/php8.0-zip /usr/share/php8.1-mbstring /usr/share/php8.1-xml /usr/share/php8.0-mbstring /usr/share/php8.0-common /usr/share/php8.0-curl /usr/share/php8.1-readline /usr/share/php8.1-common /usr/share/man/man1/php.1.gz 

Шаг 2: Настройка VS-Code

Перейдите в -> «Настройки -> Настройки»
Найдите -> «Путь PHP»
Затем нажмите -> «Изменить в settings.json»

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

"php.validate.executablePath": "/usr/bin/php8.1", 

Поделиться 13 мая 2022 в 09:13

У меня есть Ubuntu и XAMPP. Следующее сработало для меня.

Нажмите CTRL + P и введите settings.json и нажмите ENTER.

Добавьте следующую строку в settings.json

Убедитесь, что синтаксис правильный.

Поделиться 27 августа 2021 в 05:48

Я не знаю, поможет ли это, но столкнулся с той же проблемой с расширением PHP Intelephense в Visual Studio Code. Что я сделал, так это прочитал инструкции, чтобы расширение могло работать правильно. Поэтому я отключил функции языка PHP, искав «@builtin PHP» в расширениях. Также другие сторонние расширения PHP, которые предоставляют похожую функциональность, также должны быть отключены для лучших результатов. Наконец, я добавил шаблоны глобального масштаба для нестандартных расширений PHP в настройку files.associations. Например: «files.associations»:

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

Поделиться 15 января 2021 в 16:52

Если вы получаете это на Windows в VS code, нажмите на синюю кнопку ‘Открыть настройки’. В нижней части экрана открывается ссылка для ввода настроек, нажмите на нее, чтобы открыть файл settings.json. Измените файл так:

где C:/php-7.4.2-nts-Win32-vc15-x64 — это путь к вашему каталогу PHP

Поделиться 18 февраля 2020 в 15:19

Что касается специфической версии вопроса для Docker, я нашел эту ветку в проблеме репозитория git Intellisense в VS Code PHP, которая объясняет, как создать оберточный скрипт. Однако, это будет включать отображение томов, поэтому учитывайте это.

Поделиться 26 марта 2021 в 02:19

Скачайте PHP, в моем случае, я скачал отсюда: http://windows.php.net/download/

Скопируйте и вставьте файлы в место на вашем компьютере, а затем установите путь:

Поделиться 21 июля 2017 в 14:17

Я использовал такое решение:

Сначала создайте файл php внутри /usr/local/bin/ и сделайте его исполняемым:

sudo touch /usr/local/bin/php sudo chmod +x /usr/local/bin/php 

Обновите его содержимое с помощью:

docker exec $(docker ps --filter name=-app --format '>') php "$@" 

Таким образом, в конце будет найден контейнер с именем -app . Я использую его вместе с docker compose, где у меня есть php внутри какого-то контейнера, в конце которого есть -app . Вы можете узнать больше о filter здесь.

Затем обновите php.validate.executablePath с помощью /usr/local/bin/php :

Поделиться 11 января 2023 в 09:37

У меня также была эта ошибка. Я установил Laragon, и это добавление в setting.json сработало для меня.

Поделиться 24 марта 2022 в 15:59

Если php находится внутри контейнера Docker и вам не нужно его или вы не хотите устанавливать его на вашей локальной системе, вы можете создать php-скрипт-обертку, как предложено здесь: https://github.com/felixfbecker/vscode-php-intellisense/issues/471

Я предпочитаю использовать расширение удаленного контейнера Microsoft на vscode и работать внутри самого контейнера.

Поделиться 07 сентября 2022 в 17:30

«php.validate.executablePath»: «C:\xamp\php\php.exe» это работает для этого случая

Поделиться 23 июля 2022 в 14:16

Я использую Laragon и у меня есть 2 версии PHP 7.4 и 8.1, поэтому я настроил свой visual studio settings.json следующим образом:

"php.validate.executablePath": [ "D:/laragon/bin/php/php-7.4.33-Win32-vc15-x64/php.exe", "D:/laragon/bin/php/php-8.1.10-Win32-vs16-x64/php.exe" ], 

Поделиться 24 февраля 2023 в 19:24

  • Перейдите в ‘Настройки’ -> ‘Настройки’
  • Найдите> путь к php
  • Затем нажмите Редактировать в settings.json
  • Затем просто добавьте свой каталог (ДВАЖНО СЛАСОВЫЙ СЛЕД).
C:\\php\\php.exe 
drive:\\folder_name\\php.exe 

Это должно исправить проблему.

Поделиться 07 сентября 2021 в 02:14

php.validate.executablePath в laragon

В моем случае использование laragon выглядит так

 "php.validate.executablePath": "C:\\laragon\\bin\\php\\php-7.4.19-Win32-vc15-x64\\php.exe" 
  • php-7.4.19-Win32-vc15-x64 : Обратите внимание, что эта часть имени вашего файла может быть другой

Поделиться 19 февраля 2022 в 09:15

"php.validate.executablePath": "C:/wamp64/bin/php/php7.4.26/php.exe" 

Поделиться 01 сентября 2022 в 11:02

Я попробовал все предложения, но для меня мне нужно было добавить путь к файлу php.exe и php.ini в настройки пяти серверов: см. прикрепленный код

В основном, откройте настройки в vs code, затем перейдите в расширения > Пять серверов и найдите PHP:Executable и PHP:Ini Добавьте путь к файлу php.exe и php.ini (они находятся в одной папке), и это должно быть хорошо.

Поделиться 10 марта 2023 в 13:33

  1. Перейдите в файл settings.json в Visual Studio Code.
  2. Скопируйте этот код в ваш файл json:
"php.executables":
  1. Теперь сохраните его.

Пожалуйста, помните, что «v8.1» — это версия компилятора php.

Поделиться 30 июля 2023 в 04:33

Если используете Laragon. Не забудьте изменить \ на /

 "php.executablePath": "C:/laragon/bin/php/php-7.4.5-Win32-vc15-x64/php.exe", 

Поделиться 12 декабря 2020 в 03:11

Я также получил это сообщение об ошибке. Путь к php.exe уже был установлен в моих системных переменных среды.

Ошибка исчезла, когда я закомментировал «php.validate.executablePath»: «c:/path/to/php7.2.10/php.exe» , в файле settings.json в VSCode.

Как задать правильный путь в 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: решение более-менее найдено, если у кого схожая проблема, смотрите комментарии

  • Вопрос задан более трёх лет назад
  • 8158 просмотров

7 комментариев

Простой 7 комментариев

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

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

Luxury Car Rental in Miami | Reserve a Premium Vehicle with RealCar