Сортировка массива дней по случайному порядку с определенной датой начала - PullRequest
0 голосов
/ 02 октября 2018

У меня есть такой массив дней в случайном порядке (количество дней может быть от 1 до 5):

$jour_planning[] = "sunday";
$jour_planning[] = "wednesday";
$jour_planning[] = "monday";

Я бы хотел отсортировать их, начиная с «сегодня».

У меня работает этот код, но только в течение 7 дней в массиве, как его адаптировать?

function sort_week_days( $t1, $t2 ) {
        $weekdays = array( 'sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday' );
        foreach ( $weekdays as $key => $value ) {
            $weekdays[ $key ] = date( 'w', strtotime( $value ) );
        }

        $t1_time = date( 'w', strtotime( strtolower( $t1 ) ) );
        $t2_time = date( 'w', strtotime( strtolower( $t2 ) ) );

        return array_search( $t1_time, $weekdays ) - array_search( $t2_time, $weekdays );
}

usort($jour_planning, "sort_week_days");
$today_day = date('w', '-1day');
for ($i=0; $i <= $today_day ; $i++) {
   array_push($jour_planning, array_shift($jour_planning));
} 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...