我有两个数组,我想返回一个只包含模板中的键的数组:
$protected template = ['name' => 'john', 'age'=> 10];
public function merge($params){
$arr = array_intersect_key($params, $this->template);
}
以上是有效的,但我还想过滤出值为空的键。
所以,如果我传入:
[name => 'jeff', age => '']
它只会过滤掉一个数组:
[name => 'jeff']
有没有办法做到这一点,或者最好只是循环遍历数组并进行空检查?
答案 0 :(得分:1)
您可以使用array_filter
删除空元素。
$template = array_filter($template, 'strlen')