2016-11-12 168 views
0
一個或多個嵌套數組值

我很少在這個概念如何合併具有相同的鍵

其實我有這樣的

$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); 
從此我

最後一個數組位混淆得到這樣的

Array 
(
    [username] => username4 
) 

一個數組,但我需要的所有值類似如下

Array 
(
    [0] => username1 
    [1] => username2 
    [2] => username3 
    [3] => username4 
) 

我應該怎麼做呢?..可能有人請幫助我..

謝謝

回答

2

使用array_column功能(自PHP 5.5起可用)的簡單解決方案:

$result = array_column($arr, 'username'); 
+0

太簡單了..謝謝:) –

+0

@SuganyaRajasekar,不客氣 – RomanPerekhrest

1

您可以編寫自己的函數來獲得usernames

試試這個

<?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); 
?> 
+0

非常棒....非常感謝你正是我需要.. :) :) –

相關問題