Encontrei essa tag PHP <?= ?>
recentemente e reluto em usá-la, mas é tão difícil que eu queria que você entendesse. Sei que é uma má prática usar tags curtas <? ?>
e que devemos usar tags completas <?php ?>
, mas e essa <?= ?>
:?
Isso economizaria algumas digitações e seria melhor para a legibilidade do código, IMO. Então, em vez disso:
<input name="someVar" value="<?php echo $someVar; ?>">
Eu poderia escrever assim, que é mais limpo:
<input name="someVar" value="<?= $someVar ?>">
O uso deste operador é mal visto?
echo
leva muito facilmente ao XSS, e você deve confiar melhor no método de eco dedicado ao contexto (ou seja: ter um function html($x) { echo htmlentities($x,...); }
e un em html($someVar);
vez de echo $someVar
ou usar echo json_encode($x);
para o contexto JS). Isso torna as <?=
tags uma prática inadequada, porque significa que você escapou do conteúdo da variável em HTML em outro local e, portanto, outro local deve saber magicamente que essa variável deve ser escapada ao HTML porque é ecoada no contexto HTML.