Documentación de Laravel 10.x
Aquí encontrarás fragmentos de código de Laravel y consejos útiles sobre desarrollo web.
Laravel Pint es un arreglador de estilo de código PHP con opiniones para minimalistas. Pint se basa en PHP-CS-Fixer y facilita asegurar que el estilo de tu código se mantenga limpio y consistente.
Pint se instala automáticamente con todas las nuevas aplicaciones de Laravel, por lo que puedes empezar a usarlo de inmediato. De forma predeterminada, Pint no requiere ninguna configuración y corregirá problemas de estilo de código en tu proyecto siguiendo el estilo de codificación de Laravel.
Pint se incluye en versiones recientes del framework Laravel, por lo que la instalación suele ser innecesaria. Sin embargo, para aplicaciones más antiguas, puedes instalar Laravel Pint a través de Composer:
composer require laravel/pint --dev
Puedes indicar a Pint que corrija problemas de estilo de código invocando el binario pint
que está disponible en el directorio vendor/bin
de tu proyecto:
./vendor/bin/pint
También puedes ejecutar Pint en archivos o directorios específicos:
./vendor/bin/pint app/Models ./vendor/bin/pint app/Models/User.php
Pint mostrará una lista detallada de todos los archivos que actualiza. Puedes ver aún más detalles sobre los cambios de Pint proporcionando la opción -v
al invocar Pint:
./vendor/bin/pint -v
Si deseas que Pint simplemente inspeccione tu código en busca de errores de estilo sin cambiar realmente los archivos, puedes usar la opción --test
:
./vendor/bin/pint --test
Si deseas que Pint solo modifique los archivos que tienen cambios no confirmados según Git, puedes usar la opción --dirty
:
./vendor/bin/pint --dirty
Como se mencionó anteriormente, Pint no requiere ninguna configuración. Sin embargo, si deseas personalizar los preajustes, las reglas o las carpetas inspeccionadas, puedes hacerlo creando un archivo pint.json
en el directorio raíz de tu proyecto:
{ "preset": "laravel"}
Además, si deseas utilizar un pint.json
de un directorio específico, puedes proporcionar la opción --config
al invocar Pint:
pint --config vendor/my-company/coding-style/pint.json
Los preajustes definen un conjunto de reglas que se pueden usar para corregir problemas de estilo de código en tu proyecto. De forma predeterminada, Pint utiliza el preajuste laravel
, que corrige problemas siguiendo el estilo de codificación de Laravel. Sin embargo, puedes especificar un preajuste diferente proporcionando la opción --preset
a Pint:
pint --preset psr12
Si lo deseas, también puedes establecer el preajuste en el archivo pint.json
de tu proyecto:
{ "preset": "psr12"}
Los preajustes actualmente admitidos por Pint son: laravel
, per
, psr12
y symfony
.
Las reglas son pautas de estilo que Pint utilizará para corregir problemas de estilo de código en tu proyecto. Como se mencionó anteriormente, los preajustes son grupos predefinidos de reglas que deberían ser perfectos para la mayoría de los proyectos PHP, por lo que generalmente no necesitarás preocuparte por las reglas individuales que contienen.
Sin embargo, si lo deseas, puedes habilitar o deshabilitar reglas específicas en tu archivo pint.json
:
{ "preset": "laravel", "rules": { "simplified_null_return": true, "braces": false, "new_with_braces": { "anonymous_class": false, "named_class": false } }}
Pint se basa en PHP-CS-Fixer. Por lo tanto, puedes utilizar cualquiera de sus reglas para corregir problemas de estilo de código en tu proyecto: Configurador de PHP-CS-Fixer.
De forma predeterminada, Pint inspeccionará todos los archivos .php
en tu proyecto, excepto los que están en el directorio vendor
. Si deseas excluir más carpetas, puedes hacerlo utilizando la opción de configuración exclude
:
{ "exclude": [ "my-specific/folder" ]}
Si deseas excluir todos los archivos que contienen un patrón de nombre dado, puedes hacerlo utilizando la opción de configuración notName
:
{ "notName": [ "*-my-file.php" ]}
Si deseas excluir un archivo proporcionando una ruta exacta al archivo, puedes hacerlo utilizando la opción de configuración notPath
:
{ "notPath": [ "path/to/excluded-file.php" ]}