我最近遇到过这个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);
代替JS上下文echo $someVar
或echo json_encode($x);
用于JS上下文)。这样就使<?=
标记成为一种不好的做法,因为这意味着您已经在另一个地方用HTML转义了变量内容,并且其他地方必须神奇地知道必须对该变量进行HTML转义,因为它已在HTML上下文中回显了。