oxwall — автоматически генерировать массив опций selectbox с переполнением стека

Я искал повсюду, но не могу найти конкретный случай по этому поводу. Я пишу плагин для программы с открытым исходным кодом и использую его класс $ form и функции для рендеринга моих форм без необходимости вставки вручную в HTML.

Я пытаюсь сделать поля выбора минимального возраста (#) и максимального возраста (#), каждое из которых находится в диапазоне от 1 до 100. Я знаю, что что-то подобное можно быстро сделать с помощью чего-то вроде

for ($i = 1; $i <= 99; $i++)

А затем примените $ i к форме на вашей веб-странице. Но так как это программа MVC, я ограничен (по большей части) в том, какие классы, объекты и функции доступны. При создании реальных параметров selectbox в этой программе, вы обычно делаете что-то вроде:

$field->setOptions(array(
"Value"=>"Text Label",

промыть и повторить. Однако, поскольку я пытаюсь составить большой список чисел, я пытаюсь найти способ как-то использовать range () или, возможно, array_push. Я пробовал следующее до сих пор:

    function forAge(){
for ($i = 1; $i <= 99; $i++){
$array[] = $i;
}}

$tminage->setOptions(array(
$array[]=>$array[]));

Или пытаясь передать метод «for» и метод range в качестве значения массива. Ни один из них не работает, либо возвращает ошибки, либо ничего не отображает в окне выбора. Я хотел бы знать, есть ли какой-нибудь хороший способ обойти это, или это не имеет смысла из-за определенной функции, которая хочет простой массив со значением и меткой.

1

Решение

Может быть, я что-то здесь упускаю, но я бы сделал следующее:

$minAgeOptions = array();
for ($i = 1; $i <= 100; $i++){
$minAgeOptions[$i] = $i;
}

$tminage->setOptions($minAgeOptions);
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]