"~^{$uriPattern}$~"
header("Location: admin.php?message={$message}");
$data = [
'ВС 09:00',
'ПН 12:00',
'СР 16:00',
'ПН 10:00',
'ВТ 10:00',
'ПТ 17:00',
'ПН 17:00',
'ПН 09:00',
'some_string'
];
//фильтруем данные
$data = array_filter($data, function($item) {
return preg_match('/^(ПН|ВТ|СР|ЧТ|ПТ|СБ|ВС)\ [0|1|2]\d:\d{2}/', $item);
});
$days = explode('|', 'ПН|ВТ|СР|ЧТ|ПТ|СБ|ВС');
//http://php.net/manual/ru/function.usort.php
usort($data, function($a, $b) use ($days) {
$dayA = mb_substr($a, 0, 2);
$dayB = mb_substr($b, 0, 2);
// Если дни разные то сортируем по ним
if ($dayA !== $dayB) {
return array_search($dayA, $days) - array_search($dayB, $days);
}
//дату можно сравнивать строкой,
//главное чтобы она была строго в формате H:i
return mb_substr($a, 3) > mb_substr($b, 3);
});
var_dump($data);