2012-02-01 4 views
4

私はCakephpを使用しています。私は1から100の値でselectを設定する方法を学びたいと思いますか?

可能であれば、$this->Form->inputを使用することをお勧めします。

答えて

8

TLDR:

echo $this->Form->input('whatever', array(
    'type'=>'select', 
    'options'=>array_combine(range(1,100), range(1,100)) 
)); 

説明:

PHPのrangeがあなたのオプションのために何をしたいです数字(または文字)の配列を作成します。あなたはそれ自体でrangeを使用している場合でも、それが作成されます。

array(1,2,3,4... 

これはあなたの番号のドロップダウンを与えるだろうが、値に関係なく表示された番号のゼロ始まります - このケースでは、あなたがで終わるだろうarray(0=>1, 1=>2 ...

本当にこの欲しい:array_combineを使用することにより

array(1=>1, 2=>2, 3=>3 ... 

はちょうどそれがそう最初のオプションが表示されている番号と同じ値を持っています。

(明らかに1行で書くことができます - 読みやすくするために分かりました)

関連する問題