L'interface EMACS à PHPSTAN, comprend un vérificateur pour le mouche.
Mx package-install flycheck-phpstan( defun my-php-mode-setup ()
" My PHP-mode hook. "
( require 'flycheck-phpstan )
(flycheck-mode t ))
( add-hook 'php-mode-hook 'my-php-mode-setup )( add-hook 'php-mode-hook # 'flymake-phpstan-turn-on )Installez l'image Docker et PHPSTAN / PHPSTAN.
Si vous utilisez toujours Docker pour phpstan, ajoutez ce qui suit dans votre fichier .emacs (~~ / .emacs.d / init.el ~)
( setq-default phpstan-executable 'docker ) Mettez ce qui suit dans des fichiers .dir-locals.el sur le répertoire racine du projet.
(( nil . ((php-project-root . git)
(phpstan-executable . docker)
(phpstan-working-dir . (root . " path/to/dir " ))
(phpstan-config-file . (root . " path/to/dir/phpstan-docker.neon " ))
(phpstan-memory-limit . " 1G " )
(phpstan-level . 7 ))))Si votre compositeur de projet s'appuie sur PHPSTAN, vous n'avez rien à définir.
(( nil . ((php-project-root . git)
(phpstan-executable . docker)
(phpstan-working-dir . (root . " path/to/dir " ))
(phpstan-config-file . (root . " path/to/dir/phpstan-docker.neon " ))
(phpstan-level . 7 ))))Veuillez installer le package PHPSTAN / PHPSTAN pour chaque environnement ou projet utilisateur en utilisant Composer.
Si vous n'êtes pas familier avec la résolution des dépendances, les commandes de shell suivantes sont recommandées.
$ composer global require phpstan/phpstanAVIS : PHPSTAN / PHPSTAN-SHIM est déprécié. Veuillez lire PHPSTAN 0.12 libéré!.
Remarque : phpstan.el nécessite phpstan ** 0,10 + **. Nous recommandons fortement d'utiliser le dernier phpstan.
Veuillez télécharger phpstan.phar à partir des versions · phpstan / phpstan.
Les variables pour PHPSTAN sont principalement contrôlées par des variables de répertoire ( .dir-locals.el ).
La notation fréquemment (root. "path/to/file") apparaît dans ces variables. Il est relatif au répertoire de niveau supérieur du projet. En général, le répertoire contenant l'un des .projectile , composer.json , .git File (ou répertoire) est au niveau supérieur.
Veuillez noter que le répertoire racine du projet PHP peut correspondre à l'un ou l'autre des %rootDir% de PhpStan et / ou %currentWorkingDirectory% .
En règle générale, vous définissez les .dir-locals.el suivants.
(( nil . ((php-project-root . auto)
(phpstan-executable . docker)
(phpstan-working-dir . (root . " path/to/dir/ " ))
(phpstan-config-file . (root . " path/to/dir/phpstan-custom.neon " ))
(phpstan-level . max )))) S'il y a un fichier phpstan.neon dans le répertoire racine du projet, vous n'avez pas besoin de définir à la fois phpstan-working-dir et phpstan-config-file .
Ce package fournit des commandes pratiques pour l'utilisation de phpstan à partir d'EMACS.
phpstan-insert-dumptype Add PHPStandumpType(...); À votre code PHP et analysez-le pour faire afficher le type d'expression.
(Define-Key PHP-Mode-Map (KBD "CC ^") # 'PHPSTAN-INSERT-DUMPTYPE)
Par défaut, si vous appuyez sur Cu avant d'invoquer la commande, PHPStandumpPhpDocType() sera inséré.
Cette fonction a été ajoutée dans PHPSTAN 1.12.7 et videra les types compatibles avec les balises @param et @return phpDoc.
phpstan-insert-ignore Insérez une balise @phpstan-ignore pour supprimer toutes les erreurs phpstan sur la ligne actuelle.
Par défaut, il insère la balise sur la ligne précédente, mais s'il y a déjà une balise à la fin de la ligne actuelle ou sur la ligne précédente, les identifiants y seront ajoutés.
S'il n'y a pas de balise existante et que Cu est enfoncée avant la commande, il sera inséré à la fin de la ligne.
La plupart des variables définies dans ce package sont locales de tampon. Si vous souhaitez le définir pour plusieurs projets, utilisez SetQ-Default.
phpstan-working-dirPath to Working Directory of PHPSTAN.
"/path/to/phpstan.phar"(root . STRING)(root . "path/to/dir")nil(php-project-get-root-dir) comme répertoire de travail.phpstan-config-fileChemin vers le fichier de configuration spécifique du projet de PHPSTAN.
phpstan .(root . STRING)phpstan à partir du répertoire racine du projet.phpstan.neon(.dist) dans (phpstan-get-working-dir) .phpstan-level variable local Niveau de règle de l'analyse PHPSTAN. Veuillez consulter ReadMe #rule Les niveaux de phpstan. 0 est le plus lâche et vous pouvez également utiliser max comme alias pour le plus haut niveau. Le niveau de défaut est 0 .
phpstan-executable"/path/to/phpstan.phar"docker(root . STRING)(root . "script/phpstan")(STRING . (ARGUMENTS ...))("docker" "run" "--rm" "-v" "/path/to/project-dir/:/app" "your/docker-image")nilphpstan par dépendances compositeurs du projet ou de la commande exécutable dans la variable d'environnement PATH .phpstan-flycheck-auto-set-executableDéfinissez automatiquement le mouchard PHPSTAN-EXECUT en cas de non-NIL.
phpstan-memory-limitUtilisez l'option de limite de mémoire PHPSTAN lorsque non-NIL.
"1G"nilphpstan-docker-image URL de l'image Docker ou nom d'image Docker Hub ou nil. Par défaut comme "ghcr.io/phpstan/phpstan" . Voir Docker - PhpStan Documentation et GitHub Container Registory - Package PHPSTAN.