Attualmente sto imparando symfony e sto esaminando il libro A Gentle Introduction to symfony e ho trovato questa sezione in "Capitolo 4: Nozioni di base sulla creazione di pagine" sulla creazione di modelli (o viste):
"Se hai bisogno di eseguire qualche codice PHP nel template, dovresti evitare di usare la consueta sintassi PHP, come mostrato nel Listato 4-4. Invece, scrivi i tuoi template usando la sintassi alternativa di PHP, come mostrato nel Listato 4- 5, per mantenere il codice comprensibile per i programmatori non PHP. "
Listato 4-4 - La sintassi PHP usuale, buona per le azioni, ma cattiva per i modelli
<p>Hello, world!</p>
<?php
if ($test) {
echo "<p>".time()."</p>";
}
?>
(La cosa ironica su questo è che l'istruzione echo apparirebbe ancora meglio se il tempo fosse una variabile dichiarata nel controller perché allora potresti semplicemente incorporare la variabile nella stringa invece di concatenare)
Listato 4-5 - La sintassi PHP alternativa, buona per i modelli
<p>Hello, world!</p>
<?php if ($test): ?>
<p><?php echo time(); ?>
</p><?php endif; ?>
Non vedo come l'elenco 4-5 renda il codice "comprensibile per i programmatori non PHP" e la sua leggibilità sia alquanto instabile. 4-4 sembra molto più leggibile per me. Ci sono programmatori che usano symfony che scrivono i loro template come quelli in 4-4 anziché in 4-5? Ci sono dei motivi per cui dovrei usarne uno sull'altro? C'è la possibilità molto sottile che da qualche parte lungo la strada qualcuno meno tecnico possa modificarlo come modello, ma in che modo 4-5 lo rende effettivamente più comprensibile per loro?