如何避免蛋糕中选择框的选项数组中的一个或多个元素php

问题描述:

在蛋糕php中如何避免选择数组中的一个或多个元素选择框。如何避免蛋糕中选择框的选项数组中的一个或多个元素php

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

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

这里我想避免数组中的'第一'和'第二',这里选项数组来自数据库。

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

是否有可能通过任何改变蛋糕的PHP的选择方法来做到这一点(即array $attributes或其他任何东西)或手动搜索阵列和下降值是多少?

使用array_slice()

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

编辑:

另一种解决方案,如果你不知道数组的顺序,如果值是唯一的,是通过使用array_search()

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

或者如果值是不是唯一的,你想将它们全部删除,然后array_keys()ç应该是有用的:

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

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

如果要避免'第一',那么在结果中我只能得到'第一'值,没有数组偏移量。那么我将如何解决这个问题? – 2012-04-03 12:40:10

+0

对不起,我不明白你在问什么。你想'阵列('一','二','第二')'?你想'数组'('第一')? – MichaelRushton 2012-04-03 12:42:44

+0

是的,我想避免'array('First')'。这里'array_slice($ options,0,2)'其中0是偏移量,2是长度。但我不知道数组的偏移量('First')。它可以作为第一个元素或最后一个元素或数组中的任何元素。 – 2012-04-03 13:22:46