<?= ?>Нещодавно я натрапив на цей тег PHP, і не хочу його використовувати, але він свербить настільки сильно, що мені захотілося взяти його на себе. Я знаю, що це погана практика використання коротких тегів <? ?>і що ми повинні використовувати <?php ?>замість них повні теги , але як бути з цим <?= ?>:?
Це дозволить заощадити набравши текст, і було б краще для читання коду, IMO. Тож замість цього:
<input name="someVar" value="<?php echo $someVar; ?>">
Я міг би написати це так, що чистіше:
<input name="someVar" value="<?= $someVar ?>">
Чи нахмурився цей оператор?
echoдуже легко веде до XSS, і вам слід краще покластися на контекстний метод відлуння (тобто: мати a function html($x) { echo htmlentities($x,...); }і un html($someVar);замість echo $someVarабо використовувати echo json_encode($x);для контексту JS). Це робить <?=теги поганою практикою, оскільки це означає, що ви перемістили вміст змінної змісту в HTML в іншому місці, і так, що інше місце повинно магічно знати, що ця змінна повинна бути відхиленою від HTML, оскільки вона перегукується в контексті HTML.
