2010-12-28 3 views
0

시작 요일을 기준으로 요일을 정렬하는 함수를 작성하고 있습니다. 예를 들어요일을 PHP 정렬 함수로 정렬

:

$days = array(0=>'monday',1=>'tuesday',2=>'wednesday',3=>'thursday',4=>'friday',5=>'saturday',6=>'sunday'); 
$startday = 1; 

어떻게 첫 번째 키는 다음에, 화요일합니다 (startDay를) 일치하도록 우리가 등 수요일, 목요일에 의해 정렬 된 배열을받을 수 있나요?

현재 uksort 함수를 사용하고 있지만이 방법으로 배열을 정렬하는 방법을 완전히 알 수는 없습니다.

function sortbystartday($a,$b) { 

global $startday; 

if($a > $startday) return -1; 

return 1; 
} 

uksort($days,'sortbystartday'); 

아마도 사용자 정의 정렬 기능이 작업을 수행하는 올바른 선택이 아닐 수 있습니다. 그래서 모든 대안을 환영합니다.

답변

3

정렬을 거듭하지 않고 필요에 따라 배열을 조작하십시오.

테스트되지 않은

하지만 해야 일 :

$new_days = array_merge(array_slice($days,$startday),array_slice($days,0,$startday)); 

참고 : 당신이 필요로하는 경우에 그 알려 주시면 수정 있도록이 키 값을 유지하지 않습니다.

+0

감사합니다. 완벽하게 작동합니다. 키 값은 유지할 필요가 없습니다. – DADU