下面的代码采用数组$array
和数组键$item
,并通过在每个项目中添加逗号来实现内爆。如何更改它,以便如果数组中的项的值为null,则implode将不会添加空白逗号。
public static function implode($array, $item)
{
return implode(',', array_column($array, $item));
}
例如:
$array = [
['eri_number' => ''],
['eri_number' => '222']
['eri_number' => '']
];
$item = 'eri_number';
$myClass->implode($array, $item);
上面的代码将输出;
,222,
我只是想让它输出222
而没有其他空白值。
有人可以帮忙吗?
答案 0 :(得分:1)
您可以使用array_filter()
return implode(',', array_filter(array_column($array, $item)));
请注意,这也会过滤掉0
,字符串0
,false
和null
。
答案 1 :(得分:0)
在爆炸之前将array_filter应用于数组。
public static function implode($array, $item)
{
return implode(',', array_filer(array_column($array, $item)));
}
您可以添加一个回调函数来定义要过滤的内容,但由于空字符串是假的,因此它应该可以直接使用。