prettier / prettier/plugin-php

Parentheses around nested ternary expressions are removed, causing syntax error in PHP 8.0

Abierto
#2,115 1 comentario 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

bug
Lenguaje dominante
PHP
Estrellas
1.9k
Forks
139
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

@prettier/plugin-php v0.19.2
Playground link

Input:

<?php

var_dump((1 ? 2 : 3) ?: 4);

Output:

<?php

var_dump(1 ? 2 : 3 ?: 4);

Leads to this syntax error in PHP 8.1:

Nested ternary expressions are deprecated since PHP 7.4

Note: It does work as expected when you don't make use of a shorthand ternary operator (?:).

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Reproduce el formateo con el playground de PHP enlazado usando la entrada ternaria anidada proporcionada y compáralo con la salida mostrada. Rastrea la ruta del formateador responsable de eliminar los paréntesis y verifica después que el formateo conserve los paréntesis necesarios y ya no produzca el error de sintaxis de PHP 8.1.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
php
Área
tooling
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bien especificado
Aptitud para principiantes
45/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.