一尘不染

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

php

用PHP完成这项工作时,可能会遇到这种问题:

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

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

但这还不是全部故事:

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

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

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


阅读 254

收藏
2020-05-29

共1个答案

一尘不染

您始终希望对HTML属性中的内容进行HTML编码,您可以使用以下方法htmlspecialchars

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

您可能需要将第二个参数($quote_style)设置为ENT_QUOTES

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

2020-05-29