9
Hey v'è una sintassi alternativa per istruzione switch in PHP, ma questo codice non funziona:Sintassi alternativa per l'interruttore
<div>
<?php switch($variable): ?>
<?php case 1: ?>
<div>
Newspage
</div>
<?php break;?>
<?php case 2: ?>
</div>
Forum
<div>
<?php break;?>
<?php endswitch;?>
</div>
Parse error: syntax error, unexpected T_INLINE_HTML, expecting T_ENDSWITCH or T_CASE or T_DEFAULT in /path/to/file on line #
Questo è lo stesso esempio dai commenti della [documentazione di PHP] (http://www.php.net/manual/en/control-structures.alternative-syntax.php#80668) , ma c'è un spiegabile motivo per cui questo funziona, ma il codice nella domanda non lo fa? O è solo un bug in PHP? – Travesty3
Nevermind. [Questa risposta] (http://stackoverflow.com/a/6096600/259457) fornisce alcune spiegazioni. In pratica stai inserendo un'interruzione di riga, che non è consentita direttamente all'interno di un'istruzione 'switch' (al di fuori di' case's. In un'istruzione 'if' o un ciclo, non è un problema avere un'interruzione di riga, ma 'switch' è diverso. – Travesty3