我有这样的阵列:
[0] => Array
(
[meta_id] => 24674
[post_id] => 798
[meta_key] =>pr_no
[meta_value] => 00649
)
[1] => Array
(
[meta_id] => 24653
[post_id] => 796
[meta_key] => pr_no
[meta_value] => 00645
)
etc.
如何创建一个只包含meta_values的数组。像:
Array(0=>00649, 1=>00645, 2+>00644)
答案 0 :(得分:2)
如果您正在使用PHP> = 5.5.0,那么还有额外有用的array_column
功能!
$newArray = array_column($array, 'meta_id');
如果您仍然使用旧版本的PHP,请查看上面链接中的注释以获取解决方法。
答案 1 :(得分:0)
像这样:
$meta_values = array();
foreach($arrays AS $array){
foreach($array AS $key => $value) {
if($key == "meta_value"){
array_push($meta_values, $value);
}
}
}
此函数将遍历现有数组,查找任何meta_value
个键。当它找到一个时,它会将该键的值推送到一个新数组中。
编辑:
错过了2D数组,这意味着你必须做一个嵌套的foreach。