Как избежать одного или нескольких элементов в массиве опций окна выбора в торт php - PullRequest
0 голосов
/ 03 апреля 2012

В торт php, как избежать одного или нескольких элементов в массиве опций окна выбора.

$options = array('One','Two','First','Second');

echo $this->Form->select('trial', $options);

Здесь я хочу избежать 'First' и 'Second' из массива, здесь опция array поступает из БД.

$options = array('One','Two');

Возможно ли это сделать любым изменением в методе выбора торта php (т. Е. array $attributes или чем-то еще) или вручную выполнить поиск в массиве и сбросить значения?

1 Ответ

0 голосов
/ 03 апреля 2012

Использование array_slice():

echo $this->Form->select('trial', array_slice($options, 0, 2));

Edit:

Альтернативное решение, если вы не знаете порядок массива и значения уникальны, - это использование array_search():

unset($options[array_search('First', $options)]);

Или, если значения не являются уникальными, и вы хотите удалить их все, тогда array_keys() может быть полезно:

$keys = array_keys($options, 'First');

foreach ($keys as $key)
{
  unset($options[$key]);
}
...