[PHP-users 33927] Re: ループ内での動的 変数名の変更

Youhey Ikeda youhey.ikeda @ gmail.com
2008年 7月 31日 (木) 15:46:36 JST


はじめまして、池田と申します。

QuickFormはあまり使用経験ないので立川さんのコードの感触からすると。

for ($i=0; $i<5; ++$i) {
    ${"qno{$i}"} = array();
    for ($j=0; $j<=5; ++$j) {
        ${"qno{$i}"}[] = $this->_form->createElement('radio',null,null,null,$j);
    }
    $this->_form->addGroup(${"qno{$i}"}, "q{$i}", "選択肢{$i}");
}

という処理になるのでは?
ループのスコープがずれているように思えます。

可変変数は「$var  = "qno".$i;$$var;」でも「${'qno'.$i}」でも同等ですが、
個人的には「${"qno{$i}"}」が分かりやすいかと思っています。
ほぼ宗教論争の領域ですが。

以上、蛇足まで。


PHP-users メーリングリストの案内