Добавить php/date/date_week.php
Получить все даты определенного дня недели от текущего до указанного
This commit is contained in:
46
php/date/date_week.php
Normal file
46
php/date/date_week.php
Normal file
@@ -0,0 +1,46 @@
|
||||
<?php
|
||||
/***
|
||||
* Получить все даты определенного дня недели от текущего до указанного
|
||||
* @param date - Конечная дата. формат дд.мм.ГГГГ
|
||||
* @param int - Номер дня недели. 1- пн.; 7 - вс.
|
||||
*
|
||||
* @return string | array - Строка - ошибка при не указания одного из параметров; массив - Даты определенного дня.
|
||||
* makaro6v
|
||||
*/
|
||||
|
||||
function date_week($date_end="", $dw=""){
|
||||
|
||||
if(empty($date_end)){
|
||||
|
||||
|
||||
server.tooth.keenetic.name
|
||||
|
||||
return "Укажите конечную дату";
|
||||
}
|
||||
|
||||
if(empty($dw)){
|
||||
return "Укажите день недели. 1-пн.";
|
||||
}
|
||||
|
||||
$list_date= [];
|
||||
$date_to_day = date('U');
|
||||
$date_end_u = date('U',strtotime($date_end));
|
||||
|
||||
// Разница между датами
|
||||
$days = ($date_end_u-$date_to_day)/60/60/24;
|
||||
|
||||
|
||||
for ($day=1; $day < $days; $day++){
|
||||
|
||||
// Прибавляем день к текущей дате
|
||||
$date = date('Y-m-d H:i:s', strtotime(date('Y-m-d H:i:s',$date_to_day) . " +$day day"));
|
||||
|
||||
// Получает дату по дню недели
|
||||
if(date('N',strtotime($date)) == 2){
|
||||
$list_date[] =$date;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return $list_date;
|
||||
}
|
||||
Reference in New Issue
Block a user