2015-12-30 88 views
0

所有的價值我想一個數組值轉換,而無需使用任何環 和我有一個數組像這樣如何將數組轉換,而無需使用foreach循環

Array 
    (
[0] => Array 
     (
     [month] => August 
     ) 

[1] => Array 
    (
     [month] => July 
    ) 

[2] => Array 
    (
     [month] => October 
    ) 
) 

我想上面數組轉換在下面格式

Array 
(
    [0] => August 
    [1] => July 
    [2] => October 
) 

不使用任何循環

+0

我已經嘗試了call_user_func_array,但它只返回了一個值,我想要所有的 – Sheenu

+2

只是好奇你爲什麼要這樣做?它似乎愚蠢地崩潰了一個數組來創建多個數組,其中只有一個字符串值。 – Matt

+0

你有回答@Matt – Sheenu

回答

1

如果你使用PHP 5.5或更高版本,可以使用array_column功能:

$new_array = array_column($array, 'month'); 

在老版本的PHP,你可以使用array_map

$new_array = array_map(function($x) { return $x['month']; }, $array); 

DEMO

+0

我有一個mysql查詢,其中結果獲取上述數組格式,我想將該數組轉換爲下面的數組格式,並且值是dyanamic - – Sheenu

+0

下面的數組格式不是數組。這不是什麼。這只是在3個不同的陣列上調用'print_r'的輸出。 – Barmar

+0

也許你想要的是'array(「八月」,「七月」,「十月」)'? – Barmar

0

這是我的代碼,以便PLZ改變它....和嘗試這個

$a = array(0, 4, 5, 7); 
// PHP 5.3+ anonmymous function. 
$output = array_map(function($val) { return $val+1; }, $a); 

print_r($output); 
Array 
(
    [0] => 1 
    [1] => 5 
    [2] => 6 
    [3] => 8 
) 

編輯由OP:

function doubleValues($a) { 
    return array_map(function($val) { return $val * 2; }, $a); 
} 
+0

How我將代碼更改爲此格式 – Sheenu

+1

這與問題有什麼關係?他沒有改變數組中的值。 – Barmar

相關問題