通过 PHP 设置 html 属性的最佳实践是什么?

2022-08-30 09:30:43

在PHP中做这项工作时,可能会遇到这样的问题:

<span title="<?php echo $variable;?>">...

问题是,如果包含双引号,应将其更改为$variable\"

这还不是故事的全部:

<span title='<?php echo $variable;?>'>...

在这种情况下,我们需要将单引号更改为 ,但保留双引号不变。\'

那么,我们如何以一般财产的方式做到这一点呢?


答案 1

你总是想在HTML属性中对事物进行HTML编码,你可以用htmlspecialchars来做到这一点

<span title="<?php echo htmlspecialchars($variable); ?>">

您可能希望将第二个参数 () 设置为 。$quote_styleENT_QUOTES

唯一的潜在风险是可能已经编码,因此您可能需要将最后一个参数 () 设置为 。$variable$double_encodefalse


答案 2

好吧,在将任何文本输出到HTML之前,您应该使用htmlspecialchars()对其进行转义。因此,只需确保(双引号)正确更改即可。

请注意该函数的第二个参数。


推荐