es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

El problema con la declaración switch en PHP causa un error de sintaxis.

Mi código:

<?php
    $i = 1;
    switch ($i) {
?>
    <?php
        case 1:
    ?>
    $i es 1
    <?php
        break;
    ?>
<?php
    }
?>

Este código me da un error:

Parse error: syntax error, unexpected ' ', expecting case (T_CASE) or default (T_DEFAULT) or '}' in D:\xampp\htdocs\php-mvc\public\test.php on line 5

Sé que puedo evitar cerrar las etiquetas de php y decir echo 'texto'; pero aún así, ¿cómo puedo solucionarlo?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    El problema con el código es que no hay un caso default en la declaración switch. Toda declaración switch debe tener un caso default definido, incluso si está vacío.

    Para solucionar este error, agrega un caso default a la declaración switch, de esta manera:

    <?php
        $i = 1;
        switch ($i) {
            case 1:
                echo "i es 1";
                break;
            default:
                break;
        }
    ?>
    

    En este código corregido, cuando $i es 1, se imprimirá el mensaje “i es 1”. Si $i tiene cualquier otro valor, no sucederá nada porque el caso default está vacío.

    Además, puedes eliminar las etiquetas de apertura y cierre innecesarias de PHP para que el código sea más claro y legible.

Comments are closed.