2013-05-07 9 views
0

데이터베이스에서 오는 2 개의 배열을 결합해야합니다 (각각 날짜 강등 순서로 정렬 됨). 날짜 차수별로 새 배열을 에코해야합니다. 이 코드에 내가 가진 PHP는 정렬 기능을 공부 : 오름차순 날로부터PHP 배열 병합 및 정렬 날짜순으로 내림차순

//Function 
function dateSort($a,$b){ 
$dateA = strtotime($a['data']); 
$dateB = $b['payment_date'];//already unixtime 
return ($dateA-$dateB); 
} 

// Merge the arrays 
$h_pp_ps = array_merge($h_pp,$h_ps); 
// Sort the array using the call back function 
usort($h_pp_ps, 'dateSort'); 
//PRINT!! 
print_r($h_pp_ps); 

이 생산됩니다 결과 .... 어떻게 저 높은에서 얻을 수 있습니까? 쉽게

답변

1

아무것도 : $ dateB에서

$h_pp_ps = array_reverse($h_pp_ps); 
+0

덕분에 아마해야 하나에 대한 많은하지만 어떻게 든입니다 작동하지 않는다. t는 효과가 없습니다. – Adry

+0

@Adry가 내 대답을 편집했습니다. – wilks

+0

나는 당신의 제안으로 해결 된 문제를 표시했는데, 그 오류는 데이터베이스 결과 때문이었고 나는 그 문제에 대한 approuch를 변경해야만했다. – Adry

0

빼기 $ dateA 등 ($ dateB - $ dateA)와 같은 메소드의 return 문 'dataSort'에서는 정렬 순서를 반대로합니다.

세부 사항 :

변경이 방법

function dateSort($a,$b){ 
$dateA = strtotime($a['data']); 
$dateB = $b['payment_date'];//already unixtime 
return ($dateA-$dateB); 

}

사람 :

function dateSort($a,$b){ 
$dateA = strtotime($a['data']); 
$dateB = $b['payment_date'];//already unixtime 
return ($dateB - $dateA); 

}