Страница 1 из 1
Подружить openserver и powershell
Добавлено: 10 сен 2021, 18:28
voron121
Всем привет! Столкнулся с проблемой: после переустановки openserver перестали работать скрипты , которые ранее работали при запуске через консоль powershell (в phpShtorm у меня данная консоль ко дефолту).
При этом все ок работает при зарпуске скриптов через стандартную консоль опенсервера. Из этого делаю вывод что проблема на стороне винды - вероятно powershell не видит часть модулей, в частности mysql..
Сейчас, при попытке запустить php скрипт из консоли, в котроом используется соединение с БД в консольсыпется вот такео сообщение:
Fatal error: Uncaught PDOException: could not find driver in F:\OpenServer\domains\unitix.loc\src\Logger\Logger.php:33
Складывается такое ощущение что или для powershell используется какой-то иной модуль php или каким-то образом powershell понимает где находится интерпритатор php но не видит mysql
Вопрос: кто знает как это исправить ? Как найчить powershell норм работать с опенсервер ?
В документухе ничего не нашел
Re: Подружить openserver и powershell
Добавлено: 10 сен 2021, 20:57
SagePointer
voron121 писал(а): ↑10 сен 2021, 18:28
При этом все ок работает при зарпуске скриптов через стандартную консоль опенсервера. Из этого делаю вывод что проблема на стороне винды - вероятно powershell не видит часть модулей, в частности mysql..
А откуда он будет знать, по каким путям у вас расположены эти файлы? В PATH прописывайте, если нужно, чтобы были доступны по имени отовсюду, а не только из-под OpenServer.
Re: Подружить openserver и powershell
Добавлено: 10 сен 2021, 22:28
voron121
SagePointer писал(а): ↑10 сен 2021, 20:57
voron121 писал(а): ↑10 сен 2021, 18:28
При этом все ок работает при зарпуске скриптов через стандартную консоль опенсервера. Из этого делаю вывод что проблема на стороне винды - вероятно powershell не видит часть модулей, в частности mysql..
А откуда он будет знать, по каким путям у вас расположены эти файлы? В PATH прописывайте, если нужно, чтобы были доступны по имени отовсюду, а не только из-под OpenServer.
пробовал в PATH прописать путь к mysql - ошибка не ушла. Возмодно что-то упускаю
Re: Подружить openserver и powershell (решение найдено)
Добавлено: 20 сен 2021, 13:38
voron121
В общем все равно ничего не сработало. Поиск информации по теме показал что можно посомтреть какой конфиг загружает cli в windows (в терминале php --ini). В моем случае что-то странное: судя по выводу windows не подгружает переменные среды и не видит конфиг для php

как это побороть пока что не понятно. может кто знает ?
UPD: исправлено.
Необходимо пройти параметры среды (мой компъютер - дополнительные параметры системмы - параметры среды). В разделе системные переменные в path добавить путь к php интерпритатору (пример: F:\openserver\modules\php\PHP_7.4\). Перезагрузить пк.
PS: спасибо "дружнему" комьюнити за поддержку. Всегда приятно понимать что есть специализированный форум на котором "помогут" и на х** не пошлют (фигурально выражаясь)
Re: Подружить openserver и powershell
Добавлено: 12 окт 2021, 20:13
ERserver
Начнем с того, что если Вы используете OSPanel, то php.ini не будет находить по пути C:\Windows, он будет находиться в OSPanel.
Потом в OSPanel есть встроенный инструмент - консоль.
Дальше поиском по гуглу нашел такие ссылки:
Built-in web server
Как найти файл php.ini, используемый командной строкой?
Как установить путь php.ini по умолчанию для PHP CLI на Windows?
Глава 24. Использование PHP из командной строки
СПИСОК ОПЦИЙ КОМАНДНОЙ СТРОКИ PHP
Запуск php скрипта из консоли
В CLI SAPI есть три различных способа запуска PHP-кода
Это только малая часть, того что выдал поисковиr гугл.
Нужно только правильно завести запрос в поисковик, а именно для каких целей Вы собираетесь использовать php в командной строке Windows
Re: Подружить openserver и powershell
Добавлено: 17 окт 2021, 19:58
TXP
Просто сам PHPStrom (как и консоль, если отдельно) нужно запускать из меню OSP, чтобы он наследовал его окружение (с PATH, PHP_BIN и остальными переменными) — это уже не раз обсуждалось на форуме (хотя бы
здесь). Только с JetBrains Toolbox это не сработает — он сам перечитывает системное окружение.
Ничего никуда прописывать не надо — при смене профиля и версий модулей OSP его (окружение) сменит на актуальное и тогда, с жестким путем к конкретному php.exe, этот php у вас не запуститься, т.к. расширения будут грузиться от другой версии.
Можно сделать пару скриптов один из которых вызвать из start.tpl.bat и он будет сохранять свое окружение, а второй — будет это окружение загружать и открывать прогрммы из параметров. Тогда можно будет создать красивые ярлыки на что угодно и размещать их куда удобно. (но в OSP со start.bat есть ошибка, но она решается procmon'ом и symlink'ом (суть — файл создается не там, где потом ищется)).