Inicio › Herramientas para desarrolladores › Formateador de PHP

Formateador de PHP

Pega PHP y obtén código limpio y con un formato coherente: el plugin de PHP de Prettier reescribe los espacios, los saltos de línea y la sangría en un estilo compatible con PSR-12. ¿Prefieres conservar tus saltos de línea? Cambia a Solo reindentar. Todo funciona en tu navegador.

Última actualización:

Cargando el formateador de PHP…

Consejo: pulsa Ctrl + Intro para formatear; Tab aplica sangría dentro del editor (pulsa antes Esc para mover el foco). Tu código se formatea en tu navegador y nunca se sube ni se ejecuta.

Publicidad
Publicidad

Cómo usar Formateador de PHP

  1. Pega tu PHP en la entrada, abre un archivo .php o carga un ejemplo.
  2. Elige el modo: Formato completo reescribe el código con Prettier PHP; Solo reindentar corrige la sangría y las líneas en blanco, pero conserva tus saltos de línea.
  3. Ajusta el estilo: sangría, estilo de llaves, ancho de línea, comillas, comas finales y versión de PHP de destino.
  4. Pulsa Formatear PHP (o Ctrl + Intro). Si el código tiene un error de sintaxis, se muestran y resaltan la línea y la columna.
  5. Copia o descarga el código formateado, o pulsa Usar el resultado como entrada para seguir trabajando en él.

Reglas de disposición PSR-12 que aplica el formateador

ReglaEjemplo
4 espacios por nivel de sangría, sin tabulaciones    return $total;
La llave de apertura de clases, interfaces, traits y métodos va en su propia líneafinal class Cart
{
La llave de las estructuras de control va en la misma línea, con un espacio después de la palabra claveif ($a === $b) {
Un espacio alrededor de los operadores binarios y después de las comas$x = $a + $b * 2;
Tipos de retorno: sin espacio antes de los dos puntos y un espacio despuéspublic function total(): int
Una instrucción por línea; una línea en blanco después del namespace y de los bloques usenamespace App;

use App\Model\User;
Los argumentos se separan uno por línea cuando la llamada supera el ancho de línea$this->mailer->send(
    $to, …

Comparación de estilos de llaves

PSR-12 / PER pone la llave de apertura de clases, funciones y métodos en una línea nueva, pero mantiene las llaves de if, foreach, while y try en la misma línea. 1TBS (el "one true brace style") pone todas las llaves de apertura en la misma línea, algo que algunos equipos prefieren por coherencia con el código JavaScript. Ambos se aplican de forma coherente en todo el archivo, así que elige el que use el estándar de código de tu proyecto (o tu configuración de PHP_CodeSniffer / PHP-CS-Fixer).

Errores de sintaxis comunes en PHP

  • syntax error, unexpected end of file: una { nunca se cierra; el error se indica al final, así que busca hacia arriba la } que falta.
  • unexpected identifier / variable: normalmente falta un punto y coma al final de la línea anterior.
  • unexpected string content: falta una comilla, o se usa una variable dentro de comillas simples, donde no se interpola.
  • Heredoc not closed: antes de PHP 7.3 el identificador de cierre tenía que empezar en la columna 0; las versiones posteriores permiten sangría, pero debe coincidir con la del cuerpo.

¿Formateas plantillas con mucho marcado? Ordena las partes HTML con el Formateador de HTML y las consultas con el Formateador de SQL.

Preguntas frecuentes

¿Mi código PHP se sube a un servidor?

No. El formateador es JavaScript (Prettier y su plugin de PHP, que incluye un analizador de PHP escrito en JavaScript) que se ejecuta en tu navegador. Tu código nunca se envía a ningún sitio ni se ejecuta.

¿El resultado sigue PSR-12?

Los ajustes predeterminados producen código que sigue PSR-12 y su sucesor, el PER Coding Style, en cuanto a disposición: sangría de 4 espacios, llaves de apertura de clases y métodos en su propia línea, llaves de las estructuras de control en la misma línea y una instrucción por línea. Un formateador no cambia las reglas de nombres ni otras partes de PSR-12 que no son de disposición.

¿Cuál es la diferencia entre Formato completo y Solo reindentar?

Formato completo analiza el archivo y lo vuelve a escribir desde cero, así que se normalizan los espacios, los saltos de línea, las comillas y las líneas largas. Solo reindentar conserva cada línea tal como la escribiste y corrige la sangría según los corchetes, los bloques switch/case y las líneas de continuación, algo útil para plantillas antiguas o cuando quieres diffs mínimos.

¿Por qué dice que hay un error de sintaxis?

Formato completo necesita código que PHP pueda analizar: los puntos y coma que faltan, los corchetes o cadenas sin cerrar y las comillas que no coinciden se indican con la línea y la columna. Solo reindentar no necesita código válido, pero avisa de los corchetes o cadenas que nunca se cierran.

¿Puede formatear PHP mezclado con HTML?

Sí. El HTML fuera de las etiquetas <?php ?> se conserva tal cual, mientras que los bloques PHP se formatean. Para plantillas con mucho marcado, Solo reindentar suele dar el resultado más natural.

¿Qué versiones de PHP son compatibles?

Entiende la sintaxis moderna hasta PHP 8.3, incluidos enums, propiedades readonly, expresiones match, argumentos con nombre, atributos, funciones flecha, llamadas nullsafe ?-> y la sintaxis de callables de primera clase. Elige una versión de PHP para que el formateador no use sintaxis (como comas finales en listas de parámetros) que una versión anterior rechazaría.

¿Se prueban todas las herramientas de FreeToolCabin para comprobar su calidad y precisión?

Sí. Cada herramienta del sitio pasa pruebas automáticas en navegadores reales para comprobar que el resultado es correcto y que no hay errores. Si encuentras un fallo o tienes una sugerencia, escríbenos a [email protected] y lo revisaremos.

Herramientas relacionadas

Ver todas las de Formateadores y validadores de código →