我有一个看起来像这样的数组:
Array ( [0] => Vice President [1] => [2] => other [3] => Treasurer )
我想删除值other
中的值.
我尝试用来array_filter
过滤这个单词,但array_filter
也会删除所有空值.
我希望结果是这样的:
Array ( [0] => Vice President [1] => [2] => Treasurer )
这是我的PHP过滤器代码:
function filter($element) {
$bad_words = array('other');
list($name, $extension) = explode(".", $element);
if(in_array($name, $bad_words))
return;
return $element;
}
$sport_level_new_arr = array_filter($sport_level_name_arr, "filter");
$sport_level_new_arr = array_values($sport_level_new_arr);
$sport_level_name = serialize($sport_level_new_arr);
Run Code Online (Sandbox Code Playgroud)
我可以使用其他方法来过滤这个单词吗?
array_filter()
是正确的函数。确保您的回调函数具有正确的逻辑。
请尝试以下操作:
function other_test($var) {
// returns whether the value is 'other'
return ($var != 'other');
}
$new_arr = array_filter($arr, 'other_test');
Run Code Online (Sandbox Code Playgroud)
注意:如果你想重新索引数组,那么你可以$new_arr = array_values($new_arr);
在上面之后调用。
小智 4
foreach($sport_level_name_arr as $key => $value) {
if(in_array($value, $bad_words)) {
unset($sport_level_name_arr[$key])
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6781 次 |
最近记录: |