簡體   English   中英

如何將腳本轉換為Zend Framework?

[英]How to translate a script to Zend Framework?

我有這種情況:

<select name="year" >
    <?php 
        $today = date("Y"); 
        for ($i=2005; $i<=$today; $i++){
            echo "<option value=\"$i\">$i</option>";
        }
    ?>
</select>

這將給我20052011, ...

在zend框架中,下拉列表如下所示:

$this->addElement('select', 'department', array(
    'label'        => 'Year:',
    'multiOptions' => array('A' => 'A', 'B' => 'B', 'C' => 'C',),
    'value'        => @$val->_listing_type_id
));

如何轉換我的for loop腳本以在Zend Framework腳本中創建年份? 我知道我可以使用Zend Framework中的第一個腳本,但是我想保持語法的一致性。

有任何想法嗎?

您可以使用range創建從2005年到2011年的數字數組:

...
'multiOptions' => range(2005, 2011),
...

如果Zend確實希望鍵/值必須相同的數組,則可以使用array_combine生成所需的數組:

'multiOptions' => array_combine(range(2005, 2011), range(2005, 2011))

這將產生array(2005 => 2005, 2006 => 2006, ..., 2011 => 2011)

如果對元素有引用,則修改起來會更容易。

$department = new Zend_Form_Element_Select('department');
$department->setLabel('Year:');
.....
$this->addElement($department);

然后,您可以根據需要修改multiOptions數組:

 $today = date("Y"); 
 for ($i=2005; $i<=$today; $i++){
   $department->addMultiOption($i, $i);
 }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM