0

html オプション ボックスをまとめるためにこの html パーシャルがあり、作成する必要がある html オプション ボックスの数がわかっている場合はうまく機能します。

コントローラ:

    $formView = new ViewModel();  
    $formView->setTemplate('bns/questionnaires/forms/simple_scale_radio_form');

    $optionView = new ViewModel(array('name'=>'name 1'));
    $optionView->setTemplate('bns/questionnaires/forms/options_personality_profile');
    $formView->addChild($optionView, 'option_0');

意見:

    <?php echo $this['option_0'] ?>

しかし、今、私はデータベースから動的にこのhtmlオプションボックスを構築しています.これをしたい場合は、次のコードを使用することを考えています.

コントローラ:

$formView = new ViewModel(array('count'=>3));
$formView->setTemplate('bns/questionnaires/forms/simple_scale_radio_form');

    $optionView = new ViewModel(array('name'=>'name 1'));
    $optionView->setTemplate('bns/questionnaires/forms/options_personality_profile');
    $formView->addChild($optionView, 'option_0');

    $optionView = new ViewModel(array('name'=>'name 2'));
    $optionView->setTemplate('bns/questionnaires/forms/options_personality_profile');
    $formView->addChild($optionView, 'option_1');

    $optionView = new ViewModel(array('name'=>'name 3'));
    $optionView->setTemplate('bns/questionnaires/forms/options_personality_profile');
    $formView->addChild($optionView, 'option_2');

意見:

<?php 
        for ( $i = 0; $i < $count; $i++) {
            echo $this['option_' . $i];
        }
?>

しかし、PHP は次のエラーをスローします: Zend\View\Renderer\PhpRenderer 型のオブジェクトを配列として使用できません

私のオプションは何ですか?

前もって感謝します!

乾杯、

ジャスティン

4

1 に答える 1