2010-04-29 4 views
6

도와주세요. 여러 배열을 병합 한 다음 배열 값 수로 정렬해야합니다.다중 배열을 병합 한 다음 배열 값 개수로 정렬

$array1 = array("abc", "def", "ghi", "jkl", "mno"); 
$array2 = array("mno", "jkl", "mno", "ghi", "pqr", "stu"); 
$array3 = array_merge($array1, $array2); 
$array4 = ??? 

print_r($array4); 

내가 같이 $array4의 반환을 원하는 :

Array 
(
[0] => mno 
[1] => ghi 
[2] => jkl 
[3] => abc 
[4] => def 
[5] => pqr 
[6] => stu 
) 

답변

11

당신은 할 수 있습니다 :

$array1 = array("abc", "def", "ghi", "jkl", "mno"); 
$array2 = array("mno", "jkl", "mno", "ghi", "pqr", "stu"); 
$array3 = array_merge($array1, $array2); 

// get the array of count. 
$array4 = array_count_values($array3); 

// sort it in reverse order. 
arsort($array4); 

// extract just the keys. 
$array4 = array_keys($array4); 

Working example

+1

Perfectttttttttttt –

+0

완벽한을, 당신을 매우 감사합니다 다음 문제입니다 그나저나 많이 – Sofyan

+0

, 합병이 가능합니까? e 3 개 이상의 배열? – Sofyan