Zend将包含“Zero”的字符串传递给form-element描述

时间:2011-06-01 14:47:08

标签: php zend-framework forms zend-decorators

Zend谈话。我构建了一个Zend_Form类。 我注意到,如果我传递字符串'0',我的form-element的方法setDescription将把它视为NULL,我无法在元素描述中回显它的值。

//this is how I set the element description in Myform class:
$element->setDescription('0');

我该如何避免?

由于

卢卡

3 个答案:

答案 0 :(得分:1)

我会尝试在它周围放一些空格,或者禁用自动转义并在一个范围或另一个标记中包装0。

答案 1 :(得分:1)

根据http://php.net/manual/en/function.empty.php,php将'0'视为空。

描述装饰器render()函数检查描述是否为空()。目前似乎没有办法只显示'0'。

我建议在http://framework.zend.com/issues

提交错误报告

在改变之前,最好的办法是创建自己的描述装饰器,扩展Zend并改变行为。

答案 2 :(得分:0)

这就是我的工作方式

abstract class Gestionale_Form_Abstract_Form extends Zend_Form
{
    protected $_myParams;//params per customizzare il form in base all'action edit/new

    public function __construct($options = null, $myParams = null)
    {
        $this->_myParams = $myParams;
        parent::__construct($options);
    }

...

然后例如

class Form_Contatto extends Gestionale_Form_Abstract_Form
...
    $clienteid->setValue($this->_myParams['data']['id']);//