Примечание. Если это программное обеспечение было вам полезно, я прошу вас пометить репозиторий , чтобы я знал, что это программное обеспечение используется. Также, пожалуйста, рассмотрите возможность спонсорства для поддержки проекта, поскольку я этим занимаюсь в свободное время. Спасибо!
PHP Monitor (или phpmon ) — это легкая служебная программа для macOS, которая работает на вашем Mac и отображает активную версию PHP в строке состояния. Он тесно интегрирован с Laravel Valet, поэтому вам необходимо настроить его, если вы хотите использовать все функции приложения (см. раздел часто задаваемых вопросов ниже, где содержится информация о том, как настроить среду).
Снимок экрана: показаны основные функции PHP Monitor.
Очень удобно переключаться между разными версиями PHP. Вы даже будете получать уведомления (конечно, только если вы согласитесь)!
PHP Monitor также предоставляет вам быстрый доступ к различным полезным функциям (например, доступ к файлам конфигурации, перезапуск служб и т. д.).
Вы также можете добавлять новые домены в качестве ссылок, изолировать сайты, управлять различными службами и оказывать первую помощь для устранения всех типов распространенных проблем со ссылками PHP.
PHP Monitor — это универсальное приложение, которое изначально работает на компьютерах Mac на базе Apple Silicon и Intel.
/usr/local/homebrew
или /opt/homebrew
).php
.Начиная с PHP Monitor 6.0, для работы PHP Monitor не обязательно устанавливать Laravel Valet. Однако, чтобы получить доступ ко всем функциям PHP Monitor, рекомендуется установить Valet.
Для получения дополнительной информации посетите сайт SECURITY.md, чтобы узнать, какая версия приложения поддерживается в данный момент.
Опять же, если вы хотите иметь доступ ко всем функциям PHP Monitor, я рекомендую сначала установить Laravel Valet :
composer global require laravel/valet
valet install
valet trust
В настоящее время PHP Monitor совместим с Laravel Valet v2, v3 и v4. Каждая из этих версий Valet поддерживает немного разные версии PHP, поэтому устаревшие версии продолжают поддерживаться. Обратите внимание, что некоторые функции недоступны в более старых версиях Valet, например изоляция сайта.
Как только это будет сделано, вы сможете загрузить последнюю версию, разархивировать ее и поместить в /Applications
.
До версии 5.8 это был рекомендуемый способ установки PHP Monitor.
Если вы предпочитаете устанавливать приложение через Homebrew, вы также можете запустить следующее:
brew tap nicoverbruggen/homebrew-cask
brew install --cask phpmon
Рекомендуемый метод обновления приложения до последней версии — использование встроенного средства обновления .
Если у вас очень медленное подключение к Интернету, программа обновления может сообщить, что время загрузки истекло. В этом случае вы можете выполнить обновление вручную, загрузив последнюю версию и поместив приложение в /Applications
.
(Вы также можете использовать Homebrew для обновления PHP Monitor, но для этого вам потребуется одобрять приложение каждый раз, когда устанавливается обновление. Если вы используете встроенное средство обновления, в этом нет необходимости.)
Если вы хотите интегрироваться с выбранной вами программой запуска, вы также можете загрузить рабочий процесс Alfred или расширение Raycast, которое работает с PHP Monitor.
Чтобы они работали, приложение должно работать в фоновом режиме, а флажок «Разрешить сторонние интеграции» должен быть включен в настройках (по умолчанию).
Да, приложение подписано и нотариально заверено, то есть все, что вам нужно сделать, это одобрить его первый запуск (или каждый раз при его обновлении).
Я хотел иметь возможность сразу увидеть, какая версия PHP связана, и справиться с работой с Laravel Valet в простом приложении без необходимости каждый раз обращаться к терминалу.
Изначально для этого у меня был рабочий процесс Alfred, но теперь он заменен этой утилитой, которая также хорошо справляется с быстрым отображением дополнительной информации, такой как текущая версия PHP, ограничения памяти и многое другое.
Если вам не нужно настраивать локальную настройку PHP и вам просто нужна простая и готовая к использованию среда для начала кодирования, Laravel Herd, вероятно, более чем достаточен для многих случаев использования.
Если вам нужна дополнительная настройка и гибкость, я рекомендую вам рассмотреть PHP Monitor в сочетании с Laravel Valet или каким-либо другим решением, например Docker (например, с Laravel Sail).
PHP Monitor выполняет некоторые проверки целостности, чтобы обеспечить удобство использования приложения. Вы получите сообщение о том, что PHP Monitor не будет работать корректно в различных сценариях.
Следуйте инструкциям, указанным в предупреждении, чтобы решить любые проблемы.
(Если приложение вылетает при запуске, не показывая ни одного из этих сообщений, возможно, у вас нестандартные настройки Homebrew и Valet. Они не поддерживаются.)
Если у вас возникли проблемы, первое, что вам следует сделать, это установить последнюю версию PHP Monitor и Laravel Valet. Это может решить множество проблем. Чтобы обновить Valet, запустите
composer global update
. Не забудьте запуститьvalet install
после обновления.
Если у вас по-прежнему возникают проблемы, вот несколько распространенных вопросов и ответов, а также проблем и решений:
Все стабильные и поддерживаемые версии PHP также поддерживаются PHP Monitor. Однако в зависимости от того, какая версия Valet у вас установлена, версии PHP, доступные для переключения, могут различаться.
Примечание. Если у вас установлены версии PHP, которые могут быть обнаружены PHP Monitor, но не поддерживаются текущей активной версией Valet, вы будете предупреждены о пункте в меню с восклицательным знаком-смайликом. (
)
Резервные порты, которые можно установить с помощью функции диспетчера версий PHP PHP Monitor, доступны при наличии этого крана.
Расширения PHP, которые можно установить с помощью функции PHP Extension Manager PHP Monitor, доступны при наличии этого крана.
Для максимальной совместимости со старыми версиями PHP вы можете продолжать использовать Valet 2 или 3. Для получения дополнительной информации посетите SECURITY.md, чтобы узнать, какие версии PHP поддерживаются различными версиями Valet.
Предполагая, что вы установили формулу php
, будет установлена последняя стабильная версия PHP. На момент написания это PHP 8.3.
Вы можете установить другие поддерживаемые версии PHP через диспетчер версий PHP PHP Monitor. (Вы также можете вручную установить или обновить версии PHP, но это не рекомендуется.)
Имейте в виду, что установка или обновление версий PHP, даже если они выполняются с помощью диспетчера версий PHP PHP Monitor, может привести к обновлению других необходимых зависимостей формулы (необходимого программного обеспечения, необходимого для поддержания работоспособности этих версий PHP). Когда это происходит, это может быть не очень прозрачно, но, скорее всего, именно в этом причина того, что установка версии PHP занимает больше времени, чем ожидалось: обычно также устанавливаются другие зависимости.
Кроме того, обновление одной конкретной версии PHP может также привести к одновременному обновлению других установленных версий PHP, если зависимости для этой версии также применимы к другим (более новым) версиям PHP. Управлять версиями PHP через Homebrew немного сложно, и даже PHP Monitor может столкнуться с некоторыми трудностями.
Если вы столкнулись со странным сценарием или неисправностью, откройте проблему в системе отслеживания проблем и свяжитесь с нами. Я хотел бы продолжать совершенствовать этот процесс, чтобы сделать его максимально надежным.
Примечание . Использование PHP Monitor при управлении версиями PHP может вызвать временные конфликты псевдонимов, в то время как псевдоним основного крана и псевдоним крана относятся к другой версии PHP, но, вообще говоря, это незначительное неудобство, поскольку обычно это применимо только при появлении новой версии PHP. релизы.
Если вы используете macOS Ventura или более позднюю версию, в меню «Настройки» есть опция, которую вы можете выбрать: «Запускать PHP Monitor при входе в систему».
Если вы используете более старую версию macOS, вы можете сделать это, перетащив PHP Monitor.app в раздел «Элементы входа» в «Системные настройки» > «Пользователи и группы» для вашей учетной записи.
Супер удобно!
Менеджер сервисов отключен, и все другие очевидные интеграции Laravel Valet (поиск конфигурации, список доменов, Fix My Valet) также отключены.
(Большинство других функций остаются доступными.)
Если вы хотите впервые настроить свой компьютер с помощью PHP Monitor, вот как я это делаю.
Я также создал видеоурок, которому, возможно, будет легче следовать. Если вам нужны только команды терминала, продолжайте читать.
Сначала установите Homebrew. Сначала следуйте инструкциям там!
Затем вам нужно будет настроить PATH.
nano .zshrc
Убедитесь, что в комментариях нет следующей строки:
# on an Intel Mac
export PATH=$HOME/bin:/usr/local/bin:$PATH
Если вы используете Mac на базе Apple Silicon, вам необходимо добавить:
# on an M1 Mac
export PATH=$HOME/bin:/opt/homebrew/bin:$PATH
и добавьте следующее в свой файл .zshrc
, но добавьте это ПЕРЕД добавлением Homebrew PATH:
export PATH=$HOME/bin:~/.composer/vendor/bin:$PATH
Если вы добавляете двоичные файлы composer
и Homebrew, убедитесь, что двоичные файлы Homebrew являются предпочтительными, добавив их в путь последними. В моей системе это выглядит так:
export PATH=$HOME/bin:/usr/local/bin:$PATH
export PATH=$HOME/bin:~/.composer/vendor/bin:$PATH
export PATH=$HOME/bin:/opt/homebrew/bin:$PATH
Если вы не используете Apple Silicon, вам следует удалить третью строку.
Установите формулы php
и composer
:
brew install php composer
Убедитесь, что PHP связан правильно:
which php
должен вернуть: /usr/local/bin/php
(или /opt/homebrew/bin/php
, если вы используете Apple Silicon)
Если вам не нужен Laravel Valet, можете остановиться здесь. PHP Monitor будет работать так в автономном режиме.
Если вы также хотите использовать Valet, продолжайте и установите Valet с помощью Composer, вот так.
composer global require laravel/valet
Для получения оптимальных результатов вам следует заблокировать вашу платформу PHP для глобальных зависимостей от самой старой версии PHP, которую вы собираетесь использовать. Если это версия PHP 7.0, ваш файл ~/.composer/composer.json
может выглядеть следующим образом (пожалуйста, измените версию соответствующим образом!):
{
"require": {
"laravel/valet": "^3.0",
},
"config": {
"platform": {
"php": "7.0"
}
}
}
Снова запустите composer global update
. Это гарантирует, что при переключении на другую глобальную версию PHP Valet не сломается. Если это так, PHP Monitor сообщит вам, что вы можете с этим сделать.
Затем установите Valet:
valet install
Это должно установить dnsmasq
и настроить Valet. Отлично, почти у цели!
valet trust
Наконец, запустите PHP Monitor. Поскольку приложение нотариально заверено и подписано идентификатором разработчика, оно должно работать. Вам нужно будет одобрить первоначальный запуск приложения, но вы должны быть готовы к работе уже сейчас.
PHP Monitor будет проверять наличие обновлений каждый раз при запуске приложения.
Вы можете отключить это поведение, перейдя в «Настройки» (с помощью значка «Монитор PHP» в строке меню) и сняв флажок «Автоматически проверять наличие обновлений». (Вы всегда можете проверить наличие обновлений вручную.)
Самый простой способ — просто использовать встроенный менеджер версий PHP , который позволит вам обновить версии PHP одним щелчком мыши.
Если вы хотите сделать это вручную, вы можете следовать инструкциям ниже.
Здесь легко допустить ошибку и в итоге получить несвязанную версию PHP или версии, отсутствующие в PHP Monitor.
Вот что я обычно делаю:
brew update-reset
brew upgrade
Если после этого какие-либо версии PHP отсутствуют в PHP Monitor, выполните следующую команду для отсутствующих версий:
brew uninstall php@xx
(где xx
— версия)brew cleanup
(если у вас возникнут какие-либо проблемы с разрешениями, вам может потребоваться очистить папку вручную)brew install php@xx
(где xx
— версия) Возможно, вам все равно придется запустить brew link php
после обновления.
Вот и все. Теперь снова запустите PHP Monitor, и все будет готово!
Попробуйте установить еще раз, используя brew install php
.
Это должно решить проблему! Если это не решит проблему, запустите brew link php --force
. (После этого вам может потребоваться перезагрузить терминал, чтобы убедиться, что новая связанная версия обнаружена.)
brew install php
brew link php --force
Если вы посещаете свой домен .test
и получаете ошибку 502 (плохой шлюз) после перехода на другую версию PHP, вы столкнулись с распространенной проблемой.
Эту проблему обычно решают путем обновления Valet и повторного запуска valet install
.
composer global update
valet install
Если примерно через 30 секунд вы видите ошибку 502 (Bad Gateway), вероятно, истек срок действия вашего запроса. Возможно, вам придется решить проблему с производительностью с помощью собственного кода.
PHP Monitor сообщит вам, что установка PHP нарушена, если конфигурация вызывает предупреждения или ошибки при определении номера версии.
Поскольку PHP Monitor меняет связанную версию через Homebrew, и Valet , и ваш терминал (CLI) должны использовать новую версию PHP.
Однако в вашей системе это может быть не так. Возможно, у вас связана конкретная версия PHP, если это не так. В этом случае вам может потребоваться изменить файл .bashrc
или .zshrc
, в котором установлен PATH (в зависимости от используемого вами терминала).
Вы можете узнать, какая версия PHP используется, запустив which php
.
Вы можете узнать, что именно вызывает проблему, выполнив команду. На Intel можно запустить (заменить 7.4
на сломанную версию):
/usr/local/opt/[email protected]/bin/php -r "print phpversion();"
На Apple Silicon можно запустить (заменить 7.4
на сломанную версию):
/opt/homebrew/opt/[email protected]/bin/php -r "print phpversion();"
Здесь вы должны увидеть ошибку или предупреждение.
Обычно это дублированное объявление расширения, вызывающее проблемы, или расширение, которое не удалось загрузить. Вам придется решить эту проблему самостоятельно (обычно путем удаления нарушающего расширения или переустановки).
Убедитесь, что у вас установлен как минимум Valet 3.0 , поскольку в этой версии Valet добавлена поддержка изоляции. (Обратите внимание, что в этой версии Valet отсутствует поддержка PHP 5.6.)
Значение, указанное вами в файле .ini
, недействительно. В этом случае PHP попытается проанализировать ваше значение в байтах, что обычно непреднамеренно. ( 1GB
будет равен всего нескольким байтам, и всем вашим приложениям не хватит памяти!)
Вы должны указать такое значение: 1024K
, 256M
, 1G
. В качестве альтернативы также допускается -1
или просто целое число (что приведет к тому, что количество N байт будет пределом).
Пример . Например, попытка использовать 1GB
в качестве ограничения памяти приведет к появлению этого восклицательного знака. Правильный способ установить ограничение в 1 ГБ — использовать в качестве значения 1G
. (Примечание. Для ясности к отображаемому значению будет добавлена B
, поэтому, если вы установите 1G
, значение, сообщаемое PHP Monitor, будет равно 1 ГБ.)
(Если вы используете Valet, вы можете настроить эти ограничения в файле .conf.d/php-memory-limits.ini
. В противном случае вам может потребоваться настроить php.ini
.)
Приложение выполняет поиск определенного шаблона в соответствующих файлах .ini
. Для обычных расширений:
extension="*.so"
; extension="*.so"
Для расширений Zend:
zend_extension="*.so"
; zend_extension="*.so"
*
— это подстановочный знак и имя расширения. Если вы закомментировали расширение, обязательно закомментируйте его точкой с запятой (;) и одним пробелом после точки с запятой, чтобы PHP Monitor мог его обнаружить.
Начиная с версии 3.4, все загруженные файлы .ini используются для определения того, какие расширения включены.
Если вы используете PHP Monitor на компьютере Intel или на компьютере Apple Silicon с включенной Rosetta, PHP Monitor ожидает основной двоичный файл Homebrew в /usr/local/bin/brew
.
Если вы используете PHP Monitor на Apple Silicon без Rosetta, PHP Monitor ожидает основной двоичный файл Homebrew в /opt/homebrew/bin/brew
.
Если здесь возникнет проблема, вы получите предупреждение при запуске.
Убедитесь, что версия Homebrew, которую вы обычно используете, совпадает с той, которую ожидает PHP Monitor. Например, если вы используете оборудование M1, но все еще используете Rosetta для Homebrew, вам также необходимо запустить PHP Monitor под Rosetta.
PHP Monitor — универсальное приложение, поддерживающее обе архитектуры, поэтому узнайте здесь, как включить Rosetta с помощью PHP Monitor.
Приложение автоматически проверит наличие обновлений, что, скорее всего, и является причиной.
Это происходит при запуске (если не отключено), и приложение напрямую проверяет файл Caskfile, размещенный на GitHub. Эти данные не используются и не будут использоваться для аналитики (и, насколько я могу судить, не могут).
Я также не могу запретить brew
выполнять действия через сеть, когда PHP Monitor использует двоичный файл.
Приложение включает в себя файл политики доступа к Интернету, поэтому, если вы используете что-то вроде Little Snitch, там должно быть описание, почему происходят эти вызовы.
Вы должны настроить эти пресеты в файле JSON, расположенном в ~/.config/phpmon/config.json
.
Вы должны настроить хотя бы один действительный пресет, чтобы эти пресеты работали в PHP Monitor.
Вот пример рабочего пресета:
{ "scan_apps": [], "услуги": [], "пресеты": [ { "name": "Проект наследия", "php": "8.0", "расширения": { «xdebug»: ложь }, "конфигурация": { "memory_limit": "128M", "upload_max_filesize": "128M", "post_max_size": "128M" } } ], "экспорт": {} }
Вы можете опустить ключ php
в предустановке, если не хотите, чтобы предустановка переключалась на данную версию PHP.
Предупреждение. Чтобы эти изменения были обнаружены, необходимо перезапустить PHP Monitor.
Информация Службы Homebrew не отображаются, если вы используете Valet в автономном режиме.
Вы должны настроить эти службы в файле JSON, расположенном в ~/.config/phpmon/config.json
.
Вы можете указать специальные службы в файле конфигурации для служб Homebrew, которые запускаются от имени вашего собственного пользователя (не root).
Информация. Если ваша служба должна работать от имени пользователя root, в настоящее время ее нельзя добавить в PHP Monitor.
Вы можете узнать, какие службы доступны, запустив brew services list
.
Вот пример, в котором мы добавляем службы mailhog
и mysql
в PHP Monitor:
{ "scan_apps": [], "services": ["mailhog", "mysql"], "пресеты": [], "экспорт": {} }
Предупреждение. Чтобы эти изменения были обнаружены, необходимо перезапустить PHP Monitor.
Вы должны настроить эти пользовательские переменные среды в файле JSON, расположенном в ~/.config/phpmon/config.json
.
PHP Monitor использует среду Shell по умолчанию без каких-либо пользовательских переменных среды. Вам необходимо установить пользовательские переменные среды вручную. Затем они используются, например, для Composer.
Вот пример рабочей переменной среды COMPOSER_HOME
, которая соблюдается:
{ "scan_apps": [], "услуги": [], "пресеты": [], "экспорт": { "COMPOSER_HOME": "/absolute/путь/к/композитору/папке" } }
Предупреждение. Чтобы эти изменения были обнаружены, необходимо перезапустить PHP Monitor.
Когда вы выбираете домен и щелкаете правой кнопкой мыши по нему, вы можете открывать эти каталоги с помощью различных приложений. Это может помочь ускорить ваш рабочий процесс. Однако для того, чтобы эти приложения отображались, их необходимо сначала обнаружить.
Поддерживаемые приложения: PhpStorm, Visual Studio Code, Sublime Text, Sublime Merge, iTerm .
Все эти приложения должны определяться правильно, независимо от их местоположения в вашей системе. Если вы можете открыть его с помощью open -a "appname"
, приложение должно быть обнаружено и работать. Если вы переименовали приложение, могут возникнуть проблемы с его обнаружением.
Чтобы узнать, какие файлы проверяются для определения доступности, см. этот файл.
Вы можете добавить свои собственные приложения, создав и отредактировав файл ~/.config/phpmon/config.json
и убедитесь, что установлен ключ scan_apps
:
{ "scan_apps": ["Xcode", "Кракен"] }
Вы можете поместить в массив scan_apps
столько приложений, сколько захотите, и PHP Monitor проверит существование этих приложений. Вам не нужно указывать полный путь, должно подойти только имя приложения. Однако не все приложения поддерживают открытие папки, поэтому ваш успех может отличаться.
Предупреждение. Чтобы эти изменения были обнаружены, необходимо перезапустить PHP Monitor.
PHP Monitor по умолчанию поддерживает интеграцию сторонних приложений, и эта функция включена в настройках, если вы ее не отключите.
Вы можете получить официальный рабочий процесс Alfred или расширение Raycast.
Если вы хотите интегрировать что-то самостоятельно, все, что вам нужно, это использовать протокол phpmon://
и убедиться, что интеграция сторонних приложений включена в настройках (в PHP Monitor).
Используя обратные вызовы приложений, macOS и PHP Monitor позволяют вызывать следующее:
Файл composer.json
в корне папки (если он существует) сканируется и интерпретируется.
Если версия установлена в platform
, она имеет приоритет. Если версия не установлена в platform
, но она require
(наиболее распространенная), то используется эта версия.
Вы увидите галочку рядом с номером версии, если текущая включенная версия PHP совместима с версией, необходимой для работы сайта.
Это определяется путем оценки ограничения требований PHP (например, ^8.0
, ~8.0
или конкретной версии: 8.0
).
PHP Monitor в настоящее время проверяет ваш файл composer.json
, чтобы определить, какой проект вы используете.
Этот подход намного быстрее, чем запрос драйвера, когда у вас много ссылок на сайты, но он немного менее надежен, поскольку структура или тип проекта, определенные с помощью composer.json
могут быть не на 100% точными.
Если возникнет необходимость, вы всегда можете задать вопрос Valet с помощью командной строки. По моему опыту, загрузка драйверов неоправданно замедляла работу приложения.
Теперь вы можете использовать «Первая помощь и услуги» > «Восстановить разрешения Homebrew» , чтобы (временно) решить эту проблему и обеспечить чистое и безболезненное brew upgrade
или процесс brew cleanup
.
Если вы хотите узнать больше, обратитесь к этому вопросу, чтобы получить дополнительную информацию о том, зачем это нужно.
Пожалуйста, свяжитесь с нами и откройте проблему. PHP Monitor не должен давать сбой... (если только вы не удаляете PHP во время работы приложения, это считается нормальным поведением!)
Если вы хотите сообщить о сбое, приложите соответствующие файлы журналов , чтобы я мог выяснить, что именно пошло не так.
Чтобы найти журналы, загляните в ~/Library/Logs/DiagnosticReports
(в Finder) и посмотрите, есть ли какие-либо файлы журналов, которые начинаются с «PHP Monitor».
Кроме того, вы можете помочь мне получить еще больше информации, отправив мне подробный журнал вашего последнего сеанса PHP Monitor. По умолчанию ведение журнала отключено.
Вы можете запустить дополнительное подробное ведение журнала, запустив: touch ~/.config/phpmon/verbose
и перезапустите PHP Monitor. Вы можете найти последний вход в систему: ~/.config/phpmon/last_session.log
. Пожалуйста, прикрепите его к соответствующему отчету об ошибке.
Я не включил никакого программного обеспечения для отслеживания или анализа, поэтому, если у вас возникнут проблемы, сообщите мне об этом через сообщение о проблеме.
PHP Monitor доступен совершенно бесплатно , но если вы можете себе это позволить, пожертвование поможет поддерживать проект и поддерживать приложение.
Вы можете найти спонсорскую ссылку в верхней части этого репозитория или нажать на ссылку здесь, чтобы перейти на мою страницу спонсорства.
Пожертвования действительно помогают покрыть стоимость программы разработчиков Apple и мотивируют меня продолжать работать над PHP Monitor в нерабочее время (у меня есть дневная работа!).
Особую благодарность выражаем:
Большое спасибо за ваш вклад, добрые слова и поддержку.
Это приложение периодически запускает php-config --version
в фоновом режиме, обычно всякий раз, когда ваша конфигурация Homebrew изменяется. Наблюдатель файловой системы используется для определения изменений в каталоге bin
вашего Homebrew.
PHP Monitor также проверяет ваши файлы .ini
на наличие расширений и загружает дополнительную информацию о ваших ограничениях (ограничение памяти, ограничение POST, ограничение загрузки). См. также раздел «Обнаружение изменений конфигурации» ниже.
Эта утилита определит, какие версии PHP вы установили через Homebrew, а затем позволит вам переключаться между ними.
Переключатель отключит все службы PHP-FPM, не принадлежащие той версии, которую вы хотите использовать, и свяжет нужную версию PHP. Затем он перезапустит процесс FPM нужной версии PHP. Все это происходит параллельно, поэтому это должно быть немного быстрее, чем переключатель Valet.
Если вы используете Valet 3 или более позднюю версию, версии PHP-FPM, необходимые для поддержания работоспособности изолированных сайтов, также будут запускаться или останавливаться по мере необходимости.
PHP Monitor отслеживает вашу файловую систему в соответствующем каталоге conf.d
на предмет текущей связанной версии PHP.
При каждом изменении файла .ini PHP Monitor попытается перезагрузить текущую информацию об активной установке PHP.
Если расширение или другой процесс записывает в один файл несколько раз за короткий промежуток времени (< 1 секунды), PHP Monitor перезагрузит активную информацию о конфигурации только через некоторое время (с небольшой задержкой).
Certificates
Valet для этого имени сайта.composer.json
на наличие «заметных зависимостей». Если у вас есть laravel/framework
в require
, велика вероятность, что тип проекта в конце концов — Laravel
.Примечание. Если вы связали папку в документах, рабочем столе или загрузках, вам может потребоваться предоставить PHP Monitor доступ к этим каталогам, чтобы PHP Monitor работал правильно.
Если вы хотите узнать больше о том, как это работает, я рекомендую вам просмотреть исходный код.
Я приложил все усилия, чтобы аннотировать как можно больше, и избегал использования слишком сложной архитектуры, чтобы сделать код максимально простым в обслуживании. Код далеко не идеален (можно еще много почистить!), но приложение работает хорошо.
У меня также есть несколько тестов для ключевых частей приложения, которые, по моему мнению, необходимо протестировать. В будущем я хотел бы добавить еще больше тестов для некоторых элементов пользовательского интерфейса, но на данный момент тесты представляют собой скорее модульные тесты, чем тесты функций.
Более подробную информацию для разработчиков можно найти в файле документации для разработчиков.