[英]How to merge one or more nested array values having same keys
I'm little bit confuse in this concept 我对这个概念有些困惑
Actually I'm having an array like this 其实我有这样的数组
$arr = array("0"=>array("username"=>"username1"),"1"=>array("username"=>"username2"),"2"=>array("username"=>"username3"),"3"=>array("username"=>"username4"));
echo "<pre>";print_r($arr);
$finalArray = call_user_func_array('array_merge', $arr);
echo "<pre>";print_r($finalArray);
Finally from this I'm getting an array like this 最后,我得到了这样的数组
Array
(
[username] => username4
)
But I need all the values like as follows 但是我需要如下的所有值
Array
(
[0] => username1
[1] => username2
[2] => username3
[3] => username4
)
How should I do this?..Could someone please help me.. 我应该怎么做?..有人可以帮我吗..
Thank you, 谢谢,
使用array_column
函数的简单解决方案(自PHP 5.5起可用):
$result = array_column($arr, 'username');
You can write your own function to get usernames
您可以编写自己的函数来获取
usernames
Try this 尝试这个
<?php
function getUserNames($arr){
$userNames = array();
foreach ($arr as $key => $value){
$userNames[$key] = $value["username"];
}
return $userNames;
}
$arr = array("0"=>array("username"=>"username1"),"1"=>array("username"=>"username2"),"2"=>array("username"=>"username3"),"3"=>array("username"=>"username4"));
echo "<pre>";print_r($arr);
$finalArray = getUserNames($arr);
echo "<pre>";print_r($finalArray);
?>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.