Сортировка дней недели с помощью функции PHP-сортировки - PullRequest
0 голосов
/ 28 декабря 2010

Я строю функцию для сортировки дней недели по начальному дню.

Например:

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

Как нам отсортировать массив так, чтобы первыйключ соответствует вторнику (начальному дню), за которым следуют среда, четверг и т. д.*

function sortbystartday($a,$b) {

 global $startday;

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

 return 1;
}

uksort($days,'sortbystartday');

Возможно, пользовательская функция сортировки не является правильным выбором для выполнения этой работы.Так что любые альтернативы приветствуются.

1 Ответ

3 голосов
/ 28 декабря 2010

Не надо сортировать, просто манипулируйте массивом по мере необходимости.

Не проверено, но должно работать:

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

Примечание: это не сохранит значения ключей, поэтому, если вам нужно, дайте мне знать, и я внесу изменения.

...