我希望按键过滤,其中键是变量$kol。
$array = array(
array('name' => 'John Doe', 'email' => 'john@gmail.com'),
array('name' => 'Marry Lies', 'email' => 'marry@gmail.com'),
array('name' => 'Andrew Joe', 'email' => 'andrew@gmail.com'),
);
$like = 'jo';
$kol = 'name';
$result = array_filter($array, function ($item) use ($like) {
if (stripos($item['name'], $like) !== false) {
return true;
}
return false;
});
print_r($result);
我曾尝试用$kol替换'name',但这不起作用。 我希望能够在'name'或'email'中搜索'jo',正在更改$kol的值。 怎么去?
我认为您可以在数组筛选器上同时传递$kol
和$like
。使用下面的
来根据$kol
筛选任何列和任何类似$like
的值,
<?php
$array = array(
array('name' => 'John Doe', 'email' => 'john@gmail.com'),
array('name' => 'Marry Lies', 'email' => 'marry@gmail.com'),
array('name' => 'Andrew Joe', 'email' => 'andrew@gmail.com'),
);
$like = 'jo';
$kol = 'name';
$result = array_filter($array, function ($item) use ($kol,$like) {
if (stripos($item[$kol], $like) !== false) {
return true;
}
return false;
});
print_r($result);
演示:https://3v4L.org/ij0rg
谢谢,这解决了我的问题。