反XSS注入

使用框架display方法,自动会进行参数html实例化,防止XSS注入。

$PRM获取参数时有两种写法,普通的数组内容获取,会自动进行转义

  1. // 显示 <div> 源码为 &lt;div&gt;
  2. <span> <?=$PRM['test']?> </span>

另外可以用私用参数的方式获取,则不会被转义,适用于需要显示完整页面结构的需求(普通页面不推荐使用,隐患很大

  1. // 显示 <div> 源码为 <div>
  2. <span> <?=$PRM->test?> </span>
  3. // 效果同上
  4. <span> <?=$PRM->get('test')?> </span>

在多层数据结构中,也一样可以递归使用

  1. // 显示 <div> 源码为 &lt;div&gt;
  2. <span> <?=$PRM['array']['key1']?> </span>
  3. <span> <?=$PRM['array']->get(0)?> </span>

而多层结构数组参数会在使用时自动转义,不使用时则不会进行转义,避免资源浪费,影响渲染效率。

注意:第三个参数是否html实例化,可在/config/config.php中对字段objectEncode进行配置。