带有复选框的cakephp集合类
我有一个数组,看起来像:带有复选框的cakephp集合类,cakephp,xpath,Cakephp,Xpath,我有一个数组,看起来像: Array ( [63] => 0 [64] => 1 [65] => 1 [66] => 0 ) 是否有一种方法可以使用Set::extract或Set::remove或其他方法提取所有等于1的值(在本例中,我只需要64和65)的键 一种方法可能是这样的: $new_array = array(); foreach($your_array as $value) { if ($value == 1) {
Array (
[63] => 0
[64] => 1
[65] => 1
[66] => 0 )
是否有一种方法可以使用Set::extract或Set::remove或其他方法提取所有等于1的值(在本例中,我只需要64和65)的键 一种方法可能是这样的:
$new_array = array();
foreach($your_array as $value)
{
if ($value == 1)
{
$new_array[] = $value;
}
}
print_r($new_array);
或者您可以使用该功能。一种方法可能是:
$new_array = array();
foreach($your_array as $value)
{
if ($value == 1)
{
$new_array[] = $value;
}
}
print_r($new_array);
或者您可以使用该功能。Sarfrarz是正确的。。阵列过滤器将是最有效的解决方案 但是如果您仍然想使用CakPp的内置方法,那么您应该查看手册了解这些内容
萨弗雷兹是对的。。阵列过滤器将是最有效的解决方案 但是如果您仍然想使用CakPp的内置方法,那么您应该查看手册了解这些内容
我知道使用foreach,目前正在做类似的事情,但我只是想知道是否可以使用Set类是的,您也可以使用array_filter函数。您想使用Set类的原因是什么?array_filter(可能)会是最快的。我只是觉得使用Set类会更干净。我以前没有使用过array_filter,但是如果在没有回调参数的情况下传递它,它会删除0,因为它们等于false。我会尝试一下。@Jason:这是个好消息:)我知道使用foreach,目前正在做类似的事情,但我只是想知道是否可以使用Set类是的,您也可以使用array_filter函数。您想使用Set类的原因是什么?array_filter(可能)会是最快的。我只是觉得使用Set类会更干净。我以前没有使用过array_filter,但是如果在没有回调参数的情况下传递它,它会删除0,因为它们等于false。我来试试。@Jason:那真是个好消息:)