PHP如何从一个数组复制到另一个限制为null或空的数组
所以我有一个很大的阵列,有很多选择,都是为了汽车,所以里程,声音等等 现在让我们假设我的客户机没有提供里程数,在我将这个数组发送到我的函数之前,我想确保每个元素都不是空的,那些没有被放入新数组的元素将被发送到sql插入 这是我的阵列:PHP如何从一个数组复制到另一个限制为null或空的数组,php,Php,所以我有一个很大的阵列,有很多选择,都是为了汽车,所以里程,声音等等 现在让我们假设我的客户机没有提供里程数,在我将这个数组发送到我的函数之前,我想确保每个元素都不是空的,那些没有被放入新数组的元素将被发送到sql插入 这是我的阵列: Array ( [year] => select [make] => Buick [model] => [engine] => [mileage] => [price] => [vin] => [att1] => [
Array ( [year] => select [make] => Buick [model] => [engine] => [mileage] => [price] => [vin] => [att1] => [att2] => [att3] => [att4] => [bodystyle] => [fuel] => [hp] => [cyl] => Select [enginesize] => L [transmission] => [shifts] => [od] => [sound] => [gps] => [sound_system] => [sradio] => [tachometer] => [clock] => [trip] => [eweather] => [digitalboard] => [drive] => [fxf] => [cruisecontrol] => [tiltsteering] => [ac] => [removabletop] => [keyless] => [airbags] => [alloy] => [trunkantitrap] => [ewindows] => [emirrors] => [eseat] => [elocks] => [antitheft] => [ledheadlights] => )
所以,如果它不是空的,我如何循环它,将它添加到一个新数组中,也就是一个集合名称和值的关联数组中
抱歉,我有点困惑您可以使用以下命令从数组中删除空值: 但是,请注意,这将删除比较为布尔值的所有值
false
,这包括空字符串、字符串“0”
和整数0
。如果不想删除这些值,则必须提供对array\u filter
的自定义回调。例如,要仅删除null
值:
$arr = ['foo' => null, 'bar' => '0'];
$filtered = array_filter($arr, function($o) { return $o !== null; });
可以使用以下方法从数组中删除空值: 但是,请注意,这将删除比较为布尔值的所有值
false
,这包括空字符串、字符串“0”
和整数0
。如果不想删除这些值,则必须提供对array\u filter
的自定义回调。例如,要仅删除null
值:
$arr = ['foo' => null, 'bar' => '0'];
$filtered = array_filter($arr, function($o) { return $o !== null; });
试着
$new_arr = array();
foreach($my_arr as $key => $value) {
if($value != '' && $value != NULL )
$new_arr[$key] = $value;
}
试着
$new_arr = array();
foreach($my_arr as $key => $value) {
if($value != '' && $value != NULL )
$new_arr[$key] = $value;
}
它知道过滤后的将是一个数组吗?我不需要像
$filtered[]
这样的括号???@uillkk:是的。但是在使用之前,请自己尝试代码并阅读文档。它知道过滤后的将是一个数组吗?我不需要像$filtered[]
这样的括号???@uillkk:是的。但请自己尝试代码,并在使用之前阅读文档。请删除NULL
周围的引号,否则您将与字符串进行比较,而不是与NULL
值进行比较。顺便说一句,使用$value!=''
将用于null
删除null
周围的引号,否则您将与字符串进行比较,而不是与null
值进行比较。顺便说一句,使用$value!=''
也适用于null