Lil*_*our 3 php arrays filtering higher-order-functions
好吧,我查找了一些功能,我似乎没有找到任何幸运,
我想过滤一个数组来剥离包含一些字符串的特定数组
下面是一个例子:
$array(1 => 'January', 2 => 'February', 3 => 'March',);
$to_remove = "Jan"; // or jan || jAn, .. no case sensitivity
$strip = somefunction($array, $to_remove);
print_r($strip);
Run Code Online (Sandbox Code Playgroud)
它应该回来
[1] => February
[2] => March
Run Code Online (Sandbox Code Playgroud)
查找数组中所有值的子字符串的函数,如果找到子字符串,则从数组中删除该元素
您可以使用array_filter和stripos
$array = array(1 => 'January', 'February', 'March');
print_r(array_filter($array, function ($var) { return (stripos($var, 'Jan') === false); }));
Run Code Online (Sandbox Code Playgroud)
您可以将array_filter()与闭包(内联函数)一起使用:
array_filter(
$array,
function ($element) use ($to_remove) {
return strpos($element, $to_remove) === false;
}
);
Run Code Online (Sandbox Code Playgroud)
(PHP 版本 >= 5.3)