Remarque Si ce logiciel vous a été utile, je vous demande de bien vouloir stariser le référentiel , de cette façon je saurai que le logiciel est utilisé. Pensez également à parrainer pour soutenir le projet, car c'est quelque chose que je fais pendant mon temps libre. Merci!

PHP Monitor (ou phpmon ) est une application utilitaire macOS légère qui s'exécute sur votre Mac et affiche la version PHP active dans votre barre d'état. Il est étroitement intégré à Laravel Valet, vous devez donc le configurer si vous souhaitez utiliser toutes les fonctionnalités de l'application (consultez la FAQ ci-dessous avec des informations sur la configuration de votre environnement).

Capture d'écran : montrant les fonctionnalités clés de PHP Monitor.
C'est très pratique de basculer entre différentes versions de PHP. Vous recevrez même des notifications (uniquement si vous choisissez de vous inscrire, bien sûr) !

PHP Monitor vous donne également un accès rapide à diverses fonctionnalités utiles (comme l'accès aux fichiers de configuration, le redémarrage des services, etc.).
Vous pouvez également ajouter de nouveaux domaines sous forme de liens, isoler des sites, gérer divers services et effectuer les premiers secours pour résoudre toutes sortes de problèmes de liens PHP courants.
PHP Monitor est une application universelle qui s'exécute nativement sur les Mac Apple Silicon et Intel.
/usr/local/homebrew ou /opt/homebrew )php Homebrew est installéeÀ partir de PHP Monitor 6.0, vous n’avez pas besoin d’installer Laravel Valet pour que PHP Monitor fonctionne. Cependant, pour accéder à toutes les fonctionnalités de PHP Monitor, l'installation de Valet est recommandée .
Pour plus d'informations, veuillez consulter SECURITY.md pour savoir quelle version de l'application est actuellement prise en charge.
Encore une fois, si vous souhaitez avoir accès à toutes les fonctionnalités de PHP Monitor, je vous recommande d'installer d'abord Laravel Valet :
composer global require laravel/valet
valet install
valet trustActuellement, PHP Monitor est compatible avec Laravel Valet v2, v3 et v4. Chacune de ces versions de Valet prend en charge des versions PHP légèrement différentes, c'est pourquoi les anciennes versions restent prises en charge. Veuillez noter que certaines fonctionnalités ne sont pas disponibles dans les anciennes versions de Valet, comme l'isolation de sites.
Une fois cela fait, vous pouvez télécharger la dernière version, la décompresser et la placer dans /Applications .
Avant la version 5.8, c'était la méthode recommandée pour installer PHP Monitor.
Si vous préférez installer l'application via Homebrew, vous pouvez également exécuter ce qui suit :
brew tap nicoverbruggen/homebrew-cask
brew install --cask phpmonLa méthode recommandée pour mettre à jour l'application vers la dernière version consiste à utiliser le programme de mise à jour intégré .
Si votre connexion Internet est très lente, le programme de mise à jour peut signaler que le téléchargement a expiré. Dans ce cas, vous souhaiterez peut-être effectuer une mise à jour manuelle en téléchargeant la dernière version et en plaçant l'application dans /Applications .
(Vous pouvez également utiliser Homebrew pour mettre à jour PHP Monitor, mais cela vous demandera d'approuver l'application à chaque fois qu'une mise à jour est installée. Si vous utilisez le programme de mise à jour intégré, cela ne sera pas nécessaire.)
Si vous souhaitez intégrer le lanceur de votre choix, vous pouvez également télécharger un workflow Alfred ou une extension Raycast qui fonctionne avec PHP Monitor.
L'application doit s'exécuter en arrière-plan pour que celles-ci fonctionnent, et la case Autoriser les intégrations tierces doit être activée dans les Préférences (c'est le cas par défaut).
Oui, l'application est signée et notariée, ce qui signifie que tout ce que vous avez à faire est d'approuver son premier lancement (ou chaque fois qu'elle est mise à jour).
Je voulais pouvoir voir en un coup d'œil quelle version de PHP était liée et gérer Laravel Valet dans une application simple sans avoir à gérer le terminal à chaque fois.
Au départ, j'avais un workflow Alfred pour cela, mais il a maintenant été remplacé par cet utilitaire, qui fait également du bon travail en affichant des informations supplémentaires en un coup d'œil, comme la version actuelle de PHP, les limites de mémoire, etc.
Si vous n'avez pas besoin de personnaliser votre configuration PHP locale et que vous souhaitez simplement un environnement simple et prêt à l'emploi pour commencer à coder, Laravel Herd est probablement plus que suffisant pour de nombreux cas d'utilisation.
Si vous avez besoin de plus de personnalisation et de flexibilité, je vous encourage à envisager PHP Monitor en combinaison avec Laravel Valet ou une autre solution comme Docker (avec Laravel Sail, par exemple).
PHP Monitor effectue des contrôles d'intégrité pour garantir une bonne expérience lors de l'utilisation de l'application. Vous recevrez un message vous indiquant que PHP Monitor ne fonctionnera pas correctement dans divers scénarios.
Suivez les instructions spécifiées dans l'alerte afin de résoudre tout problème.
(Si l'application plante au lancement sans vous afficher aucun de ces messages, vous pourriez avoir une configuration Homebrew et Valet non standard. Ceux-ci ne sont pas pris en charge.)
Si vous rencontrez des problèmes, la première chose à faire est d'installer la dernière version de PHP Monitor et de Laravel Valet. Cela peut résoudre divers problèmes. Pour mettre à niveau Valet, exécutez
composer global update. N'oubliez pas d'exécutervalet installaprès la mise à niveau.
Si vous rencontrez toujours des problèmes, voici quelques questions et réponses courantes, ainsi que des problèmes et des solutions :
Toutes les versions PHP stables et prises en charge sont également prises en charge par PHP Monitor. Cependant, selon la version de Valet que vous avez installée, les versions de PHP mises à disposition à des fins de changement peuvent différer.
Remarque Si vous avez installé des versions de PHP qui peuvent être détectées par PHP Monitor mais qui ne sont pas prises en charge par la version actuellement active de Valet, vous serez alerté par un élément du menu avec un emoji de point d'exclamation. (
)
Les rétroportages installables via la fonctionnalité PHP Version Manager de PHP Monitor sont soumis à disponibilité via ce robinet.
Les extensions PHP installables via la fonctionnalité PHP Extension Manager de PHP Monitor sont soumises à disponibilité via ce robinet.
Pour une compatibilité maximale avec les anciennes versions de PHP, vous souhaiterez peut-être continuer à utiliser Valet 2 ou 3. Pour plus d'informations, veuillez consulter SECURITY.md pour savoir quelles versions de PHP sont prises en charge avec les différentes versions de Valet.
En supposant que vous ayez installé la formule php , la dernière version stable de PHP est installée. Au moment de la rédaction, il s'agit de PHP 8.3.
Vous pouvez installer d'autres versions prises en charge de PHP via le gestionnaire de versions PHP de PHP Monitor. (Vous pouvez également installer ou mettre à niveau manuellement les versions de PHP, mais cela n'est pas recommandé.)
Veuillez garder à l'esprit que l'installation ou la mise à jour des versions PHP, même lorsqu'elle est effectuée via le gestionnaire de versions PHP de PHP Monitor, peut entraîner la mise à niveau d'autres dépendances de formule requises (logiciels requis pour que ces versions PHP restent fonctionnelles). Cela n'est peut-être pas très transparent lorsque cela se produit, mais c'est probablement la cause si l'installation d'une version de PHP prend plus de temps que prévu : généralement d'autres dépendances sont également installées.
De plus, la mise à niveau d'une version spécifique de PHP peut également entraîner la mise à jour simultanée d'autres versions installées de PHP, si les dépendances de cette version s'appliquent également aux autres versions (plus récentes) de PHP. Il est un peu délicat de gérer les versions PHP via Homebrew, et même PHP Monitor peut rencontrer quelques difficultés.
Si vous rencontrez un scénario étrange ou un dysfonctionnement, veuillez ouvrir un problème sur l'outil de suivi des problèmes et nous contacter. J'aimerais continuer à améliorer ce processus pour le rendre aussi infaillible que possible.
Remarque : L'utilisation de PHP Monitor lors de la gestion des versions PHP peut provoquer des conflits d'alias temporaires alors que l'alias du tap principal et l'alias du tap font référence à une version différente de PHP, mais il s'agit généralement d'un inconvénient mineur, car cela ne s'applique normalement que lors d'une nouvelle version de PHP. libère.
Si vous utilisez macOS Ventura ou une version plus récente, il existe une option dans le menu Paramètres que vous pouvez sélectionner : "Démarrer PHP Monitor lors de la connexion".
Si vous utilisez une ancienne version de macOS, vous pouvez le faire en faisant glisser PHP Monitor.app dans la section Éléments de connexion dans Préférences Système > Utilisateurs et groupes de votre compte.
Hyper pratique !
Le gestionnaire de services est désactivé et toutes les autres intégrations évidentes de Laravel Valet (outil de recherche de configuration, liste de domaines, Fix My Valet) sont également désactivées.
(La plupart des autres fonctionnalités restent disponibles.)
Si vous souhaitez configurer votre ordinateur pour la toute première fois avec PHP Monitor, voici comment procéder.
J'ai également créé un didacticiel vidéo qui peut être plus facile à suivre. Si vous voulez juste les commandes du terminal, continuez à lire.
Installez d'abord Homebrew. Suivez d’abord les instructions !
Ensuite, vous devrez configurer votre PATH.
nano .zshrc
Assurez-vous que la ligne suivante n'est pas dans les commentaires :
# on an Intel Mac
export PATH=$HOME/bin:/usr/local/bin:$PATH
Si vous utilisez un Mac basé sur Apple Silicon, vous devrez ajouter :
# on an M1 Mac
export PATH=$HOME/bin:/opt/homebrew/bin:$PATH
et ajoutez ce qui suit à votre fichier .zshrc , mais ajoutez-le AVANT les ajouts homebrew PATH :
export PATH=$HOME/bin:~/.composer/vendor/bin:$PATH
Si vous ajoutez des binaires composer et Homebrew, assurez-vous que les binaires Homebrew sont préférés en les ajoutant en dernier au chemin. Sur mon système, cela ressemble à ceci :
export PATH=$HOME/bin:/usr/local/bin:$PATH
export PATH=$HOME/bin:~/.composer/vendor/bin:$PATH
export PATH=$HOME/bin:/opt/homebrew/bin:$PATH
Si vous n'êtes pas sur Apple Silicon, vous devez supprimer la troisième ligne.
Installez les formules php et composer :
brew install php composer
Assurez-vous que PHP est correctement lié :
which php
devrait renvoyer : /usr/local/bin/php (ou /opt/homebrew/bin/php si vous êtes sur Apple Silicon)
Si vous n'avez pas besoin de Laravel Valet, vous pouvez vous arrêter ici. PHP Monitor fonctionnera comme ceci en mode autonome.
Si vous souhaitez également avoir Valet, continuez et installez Valet avec Composer, comme ceci.
composer global require laravel/valet
Pour des résultats optimaux, vous devez verrouiller votre plate-forme PHP pour les dépendances globales sur la version la plus ancienne de PHP que vous avez l'intention d'exécuter. Si cette version est PHP 7.0, votre fichier ~/.composer/composer.json pourrait ressembler à ceci (veuillez ajuster la version en conséquence !) :
{
"require": {
"laravel/valet": "^3.0",
},
"config": {
"platform": {
"php": "7.0"
}
}
}
Exécutez à nouveau composer global update . Cela garantit que lorsque vous passez à une autre version globale de PHP, Valet ne tombera pas en panne. Si tel est le cas, PHP Monitor vous indiquera ce que vous pouvez faire à ce sujet.
Ensuite, installez Valet :
valet install
Cela devrait installer dnsmasq et configurer Valet. Super, j'y suis presque !
valet trust
Enfin, exécutez PHP Monitor. Étant donné que l'application est notariée et signée avec un identifiant de développeur, elle devrait fonctionner. Vous devrez approuver le lancement initial de l’application, mais vous devriez être prêt à partir maintenant.
PHP Monitor vérifiera si une mise à jour est disponible à chaque fois que vous démarrez l'application.
Vous pouvez désactiver ce comportement en allant dans Préférences (via l'icône PHP Monitor dans la barre de menu) et en décochant "Vérifier automatiquement les mises à jour". (Vous pouvez toujours vérifier les mises à jour manuellement.)
Le moyen le plus simple consiste simplement à utiliser le gestionnaire de versions PHP intégré, qui vous permettra de mettre à niveau vos versions PHP en un seul clic.
Si vous souhaitez le faire manuellement, vous pouvez suivre les instructions ci-dessous.
Il est facile de faire une erreur ici et de se retrouver avec une version non liée de PHP ou des versions manquantes dans PHP Monitor.
Voici ce que je fais habituellement :
brew update-resetbrew upgradeSi après cela, des versions de PHP sont manquantes dans PHP Monitor, veuillez exécuter ce qui suit pour les versions manquantes :
brew uninstall php@xx (où xx est la version)brew cleanup (si vous rencontrez des problèmes d'autorisation, vous devrez peut-être nettoyer manuellement le dossier)brew install php@xx (où xx est la version) Vous devrez peut-être également exécuter brew link php après la mise à niveau.
C'est ça. Maintenant, redémarrez PHP Monitor et vous devriez être en or !
Essayez à nouveau d'installer en utilisant brew install php .
Cela devrait résoudre le problème ! Si cela ne résout pas le problème, exécutez brew link php --force . (Ensuite, vous devrez peut-être redémarrer votre terminal pour vous assurer que la nouvelle version liée est détectée.)
brew install php
brew link php --force
Si vous visitez votre domaine .test et que vous obtenez un 502 (Bad Gateway) après être passé à une autre version de PHP, vous êtes confronté à un problème courant.
Ce problème est généralement résolu en mettant à niveau Valet et en exécutant à nouveau valet install .
composer global update
valet install
Si vous voyez une erreur 502 (Bad Gateway) après environ 30 secondes, votre demande expire probablement. Vous devrez peut-être résoudre un problème de performances avec votre propre code.
PHP Monitor vous indique qu'une installation PHP est interrompue si la configuration provoque des avertissements ou des erreurs lors de la détermination du numéro de version.
Étant donné que PHP Monitor modifie la version liée via Homebrew, Valet et votre terminal (CLI) doivent utiliser la nouvelle version de PHP.
Cependant, ce n'est peut-être pas le cas sur votre système. Vous pourriez avoir une version spécifique de PHP liée si ce n'est pas le cas. Dans ce cas, vous devrez peut-être modifier votre fichier .bashrc ou .zshrc où le PATH est défini (en fonction du terminal que vous utilisez).
Vous pouvez découvrir quelle version de PHP est utilisée en exécutant which php .
Vous pouvez découvrir la cause exacte du problème en exécutant une commande. Sur Intel, vous pouvez exécuter (remplacer 7.4 par la version qui est cassée) :
/usr/local/opt/[email protected]/bin/php -r "print phpversion();"
Sur Apple Silicon, vous pouvez exécuter (remplacer 7.4 par la version cassée) :
/opt/homebrew/opt/[email protected]/bin/php -r "print phpversion();"
Vous devriez voir une erreur ou un avertissement ici dans la sortie.
Il s'agit généralement d'une déclaration d'extension en double provoquant des problèmes ou d'une extension qui n'a pas pu être chargée. Vous devrez résoudre ce problème vous-même (généralement en supprimant l'extension incriminée ou en la réinstallant).
Assurez-vous d'avoir au moins Valet 3.0 installé, car la prise en charge de l'isolation a été ajoutée dans cette version de Valet. (Veuillez noter que cette version de Valet ne prend plus en charge PHP 5.6.)
La valeur que vous avez fournie dans votre fichier .ini n'est pas valide. Si tel est le cas, PHP tentera d'analyser votre valeur en octets, ce qui est généralement involontaire. ( 1GB ne prendra que quelques octets et toutes vos applications manqueront de mémoire !)
Vous devez fournir une valeur comme celle-ci : 1024K , 256M , 1G . Alternativement, -1 est également autorisé, ou simplement un nombre entier (ce qui entraînera un nombre N d'octets comme limite).
Exemple : essayer d'utiliser 1GB comme limite de mémoire, par exemple, entraînera ce point d'exclamation. La bonne façon de définir une limite de 1 Go consiste à utiliser 1G comme valeur. (Remarque : la valeur affichée ajoutera B pour plus de clarté, donc si vous définissez 1G , la valeur signalée par PHP Monitor sera de 1 Go.)
(Si vous utilisez Valet, vous pouvez ajuster ces limites dans le fichier .conf.d/php-memory-limits.ini . Sinon, vous devrez peut-être ajuster php.ini .)
L'application recherche dans les fichiers .ini pertinents un modèle spécifique. Pour les extensions régulières :
extension="*.so"; extension="*.so"Pour les extensions Zend :
zend_extension="*.so"; zend_extension="*.so" Le * est un caractère générique et le nom de l'extension. Si vous avez commenté l'extension, assurez-vous de l'avoir commentée avec un point-virgule (;) et un seul espace après le point-virgule pour que PHP Monitor puisse la détecter.
Depuis la version 3.4, tous les fichiers .ini chargés sont récupérés pour déterminer quelles extensions sont activées.
Si vous utilisez PHP Monitor sur une machine Intel ou sur une machine Apple Silicon avec Rosetta activé, PHP Monitor attend le binaire Homebrew principal dans /usr/local/bin/brew .
Si vous utilisez PHP Monitor sur Apple Silicon sans Rosetta, PHP Monitor attend le binaire Homebrew principal dans /opt/homebrew/bin/brew .
S'il y a un problème ici, vous recevrez une alerte au lancement.
Assurez-vous que la version de Homebrew que vous exécutez normalement est la même que celle attendue par PHP Monitor. Si vous utilisez du matériel M1 par exemple, mais que vous utilisez toujours Rosetta pour Homebrew, vous devrez également exécuter PHP Monitor sous Rosetta.
PHP Monitor est une application universelle et prend en charge les deux architectures, alors découvrez ici comment activer Rosetta avec PHP Monitor.
L'application recherchera automatiquement les mises à jour, ce qui est le coupable le plus probable.
Cela se produit au lancement (sauf si désactivé) et l'application vérifie directement le Caskfile hébergé sur GitHub. Ces données ne sont pas et ne seront pas utilisées à des fins d'analyse (et, pour autant que je sache, ne le peuvent pas).
Je ne peux pas non plus empêcher brew de faire des choses via le réseau lorsque PHP Monitor utilise le binaire.
L'application comprend un fichier de politique d'accès Internet, donc si vous utilisez quelque chose comme Little Snitch, il devrait y avoir une description de la raison pour laquelle ces appels se produisent.
Vous devez configurer ces préréglages dans un fichier JSON, situé dans ~/.config/phpmon/config.json .
Vous devez avoir configuré au moins un préréglage valide pour que ces préréglages fonctionnent dans PHP Monitor.
Voici un exemple de préréglage fonctionnel :
{
"scan_apps": [],
"services": [],
"préréglages": [
{
"name": "Projet hérité",
"php": "8.0",
"extensions": {
"xdebug": faux
},
"configuration": {
"memory_limit": "128M",
"upload_max_filesize": "128 Mo",
"post_max_size": "128M"
}
}
],
"exporter": {}
}
Vous pouvez omettre la clé php dans le préréglage si vous ne souhaitez pas que le préréglage passe à une version PHP donnée.
Avertissement Vous devez redémarrer PHP Monitor pour que ces modifications soient détectées.
Les services Info Homebrew ne s'affichent pas si vous utilisez Valet en mode autonome.
Vous devez configurer ces services dans un fichier JSON, situé dans ~/.config/phpmon/config.json .
Vous pouvez spécifier des services personnalisés dans le fichier de configuration pour les services Homebrew qui s'exécutent en tant que votre propre utilisateur (et non root).
Info Si votre service doit s'exécuter en tant que root, il ne peut actuellement pas être ajouté à PHP Monitor.
Vous pouvez découvrir quels services sont disponibles en exécutant brew services list .
Voici un exemple où nous ajoutons les services mailhog et mysql à PHP Monitor :
{
"scan_apps": [],
"services": ["mailhog", "mysql"],
"préréglages": [],
"exporter": {}
}
Avertissement Vous devez redémarrer PHP Monitor pour que ces modifications soient détectées.
Vous devez configurer ces variables d'environnement personnalisées dans un fichier JSON, situé dans ~/.config/phpmon/config.json .
PHP Monitor utilise un environnement Shell par défaut, sans variables d'environnement personnalisées. Vous devez définir manuellement les variables d'environnement personnalisées. Ceux-ci sont ensuite utilisés par exemple pour Composer.
Voici un exemple de variable d'environnement COMPOSER_HOME fonctionnelle et respectée :
{
"scan_apps": [],
"services": [],
"préréglages": [],
"exporter": {
"COMPOSER_HOME": "/absolute/chemin/vers/composer/dossier"
}
}
Avertissement Vous devez redémarrer PHP Monitor pour que ces modifications soient détectées.
Lorsque vous sélectionnez et cliquez avec le bouton droit sur un domaine, vous pouvez ouvrir ces répertoires avec diverses applications. Cela peut aider à accélérer votre flux de travail. Cependant, pour que ces applications apparaissent, elles doivent d’abord être détectées.
Les applications prises en charge sont : PhpStorm, Visual Studio Code, Sublime Text, Sublime Merge, iTerm .
Toutes ces applications doivent simplement être détectées correctement, quel que soit leur emplacement sur votre système. Si vous pouvez l'ouvrir en utilisant open -a "appname" , l'application devrait être détectée et fonctionner. Si vous avez renommé l'application, il se peut qu'il y ait un problème pour la détecter.
Pour voir quels fichiers sont vérifiés pour déterminer la disponibilité, consultez ce fichier.
Vous pouvez ajouter vos propres applications en créant et en modifiant un fichier ~/.config/phpmon/config.json et en vous assurant que la clé scan_apps est définie :
{
"scan_apps": ["Xcode", "Kraken"]
}
Vous pouvez mettre autant d'applications que vous le souhaitez dans le tableau scan_apps , et PHP Monitor vérifiera l'existence de ces applications. Vous n'avez pas besoin de définir le chemin complet, seul le nom de l'application devrait fonctionner. Cependant, toutes les applications ne prennent pas en charge l'ouverture d'un dossier, votre succès peut donc varier.
Avertissement Vous devez redémarrer PHP Monitor pour que ces modifications soient détectées.
PHP Monitor prend en charge les intégrations d'applications tierces par défaut et cette fonctionnalité est activée dans les Préférences, sauf si vous la désactivez.
Vous pouvez récupérer le flux de travail officiel Alfred ou l'extension Raycast.
Si vous souhaitez intégrer quelque chose vous-même, il vous suffit d'utiliser le protocole phpmon:// et de vous assurer que les intégrations d'applications tierces sont activées dans les Préférences (dans PHP Monitor).
À l'aide des rappels d'application, macOS et PHP Monitor permettent d'appeler les éléments suivants :
Le fichier composer.json à la racine du dossier (s'il existe) est analysé et interprété.
Si la version est définie dans platform , elle est prioritaire. Si la version n'est pas définie dans platform mais qu'elle est require (le plus courant), alors cette version est utilisée.
Vous verrez une coche à côté du numéro de version si la version PHP actuellement activée est compatible avec la version requise pour exécuter le site.
Ceci est déterminé en évaluant la contrainte d'exigence PHP (par exemple ^8.0 , ~8.0 ou une version spécifique : 8.0 ).
PHP Monitor vérifie actuellement votre fichier composer.json pour essayer de déterminer quel projet vous exécutez.
Cette approche est beaucoup plus rapide que de demander un pilote lorsque vous avez de nombreux sites liés, mais elle est légèrement moins fiable puisque le cadre ou le type de projet déduit via composer.json peut ne pas être précis à 100 %.
Vous pouvez toujours demander à Valet en utilisant la ligne de commande, si cela est nécessaire. D'après mon expérience, la récupération des pilotes a ralenti l'application inutilement.
Vous pouvez maintenant utiliser Premiers secours et services > Restaurer les autorisations Homebrew pour résoudre (temporairement) ce problème et permettre une brew upgrade ou un processus brew cleanup .
Si vous souhaitez en savoir plus, consultez ce numéro pour plus d'informations sur les raisons pour lesquelles cela est nécessaire.
Veuillez nous contacter et ouvrir un problème. PHP Monitor ne devrait pas planter... (sauf si vous supprimez PHP pendant que l'application est en cours d'exécution, cela est considéré comme un comportement normal !)
Si vous souhaitez signaler un crash, veuillez inclure les fichiers journaux associés afin que je puisse découvrir exactement ce qui ne va pas.
Pour trouver les journaux, jetez un œil dans ~/Library/Logs/DiagnosticReports (dans le Finder) et voyez s'il existe des fichiers (journaux) qui commencent par "PHP Monitor".
De plus, vous pouvez m'aider à obtenir encore plus d'informations en m'envoyant votre journal détaillé pour votre dernière session de PHP Monitor. La journalisation est désactivée par défaut.
Vous pouvez démarrer une journalisation détaillée supplémentaire en exécutant : touch ~/.config/phpmon/verbose et en redémarrant PHP Monitor. Vous pouvez trouver la dernière connexion : ~/.config/phpmon/last_session.log . Veuillez le joindre au rapport de bug correspondant.
Je n'ai inclus aucun logiciel de suivi ou d'analyse, donc si vous rencontrez des problèmes, faites-le-moi savoir via un problème.
PHP Monitor est disponible entièrement gratuitement , mais si vous pouvez vous le permettre, un don aide à maintenir le projet en vie et à maintenir l'application.
Vous pouvez trouver un lien de sponsor en haut de ce dépôt ou vous pouvez cliquer sur le lien ici pour accéder à ma page de parrainage.
Les dons aident vraiment à couvrir le coût du programme pour développeurs Apple et me motivent à continuer à travailler sur PHP Monitor en dehors des heures de travail (j'ai un travail quotidien !).
Des remerciements particuliers vont à :
Merci beaucoup pour vos contributions, vos paroles aimables et votre soutien.
Cette application exécute périodiquement php-config --version en arrière-plan, généralement chaque fois que votre configuration Homebrew est modifiée. Un observateur du système de fichiers est utilisé pour déterminer si quelque chose change dans le répertoire bin de votre Homebrew.
PHP Monitor vérifie également les extensions de vos fichiers .ini et charge plus d'informations sur vos limites (limite de mémoire, limite POST, limite de téléchargement). Voir également la section sur la détection des changements de configuration ci-dessous.
Cet utilitaire détectera les versions de PHP que vous avez installées via Homebrew, puis vous permettra de basculer entre elles.
Le switcher désactivera tous les services PHP-FPM n'appartenant pas à la version que vous souhaitez utiliser, et liera la version souhaitée de PHP. Ensuite, il redémarrera le processus FPM de la version PHP souhaitée. Tout cela se passe en parallèle, cela devrait donc être un peu plus rapide que le mélangeur de Valet.
Si vous utilisez Valet 3 ou une version plus récente, les versions de PHP-FPM requises pour maintenir les sites isolés opérationnels seront également démarrées ou arrêtées selon les besoins.
PHP Monitor surveille votre système de fichiers dans le répertoire conf.d correspondant à la version PHP actuellement liée.
Chaque fois qu'un fichier .ini est modifié, PHP Monitor tentera de recharger les informations actuelles sur l'installation PHP active.
Si une extension ou un autre processus écrit dans un seul fichier plusieurs fois dans un court laps de temps (< 1 seconde), PHP Monitor ne rechargera les informations de configuration actives qu'après un certain temps (avec un léger délai).
Certificates de Valet pour ce nom de site.composer.json pour les "dépendances notables". Si vous avez laravel/framework dans votre require , il y a de fortes chances que le type de projet soit Laravel , après tout.Remarque Si vous avez lié un dossier dans Documents, Bureau ou Téléchargements, vous devrez peut-être accorder à PHP Monitor l'accès à ces répertoires pour que PHP Monitor fonctionne correctement.
Si vous souhaitez en savoir plus sur son fonctionnement, je vous recommande de consulter le code source.
J'ai fait de mon mieux pour annoter autant que possible et j'ai évité d'utiliser une architecture trop compliquée pour que le code soit aussi facile à maintenir que possible. Le code n'est pas parfait de loin (de nombreux nettoyages peuvent encore avoir lieu !) mais l'application fonctionne bien.
J'ai également quelques tests pour les parties clés de l'application qui, selon moi, devaient être testées. À l'avenir, j'aimerais ajouter encore plus de tests pour certains éléments de l'interface utilisateur, mais pour l'instant, les tests sont davantage des tests unitaires que des tests de fonctionnalités.
Pour des informations plus détaillées destinées aux développeurs, veuillez consulter le fichier de documentation destiné aux développeurs.