ZF3表单元素类使用unicode实体进行编码

时间:2017-11-15 10:09:59

标签: zend-framework zend-form zend-framework3

我试图弄清楚为什么ZF3会编码我的元素的类字符串,但却无法在互联网上找到有关该行为的任何内容。

$this->add([
    'type'  => 'Button',
    'name' => 'submitLogin',
    'options' => [
        'label' => '<i class="zmdi zmdi-check"></i>',
        'label_options' => [
            'disable_html_escape' => true,
        ]
    ],
    'attributes' => [
        'type' => 'submit',
        'class' => 'btn btn--icon login__block__btn',
    ],
]);

变为

<button type="submit" name="submitLogin" class="btn&#x20;btn--icon&#x20;login__block__btn" value=""><i class="zmdi zmdi-check"></i></button>

1 个答案:

答案 0 :(得分:0)

我认为这是一个抽象的概念。通常,我们在处理数据时会采取一些步骤。 我们过滤输入值和转义输出。这是一种安全理念。

Zend Framework做了同样的事情,而有些事情是关于安全性的。这意味着此行为是默认的。 ZF在显示到浏览器上时会转义属性值。 ZF仅允许通过显式选项进行非转义,就像您对上面的label内容所做的那样。

您将通过this issue在github上获得一些概念,其中Matthew说:

  

默认情况下,安全是咒语