написал код который проверяет за определенную дату какой это день (рабочий\не рабочий\праздник и т.п)
$gettingsDtae = ;
$gettingsDtae = preg_replace('![^0-9]+!', '', $gettingsDtae);
$url = 'https://isdayoff.ru/' . $gettingsDtae . '?ua=UA&pre=1';
$correctDate = file_get_contents($url);
if ($correctDate == 0) {
$gettingsDtae = "Рабочий день";
$limit = 8;
} elseif ($correctDate == 1) {
$gettingsDtae = "Нерабочий день";
$limit = 0;
} elseif ($correctDate = 2) {
$gettingsDtae = "Сокращённый день";
$limit = 7;
} elseif ($correctDate = 100) {
$gettingsDtae = "Ошибка в дате/коде страны";
} elseif ($correctDate = 101) {
$gettingsDtae = "Данные не найдены";
} elseif ($correctDate = 199) {
$gettingsDtae = "Ошибка сервиса";
} else {
$gettingsDtae = "неизвестная ошибка с датой";
}
теперь надо это слепить с выборкой из БД
$starttime = 2019-03-01;
$endtime = 2019-03-30;
$query2 = $mysqli->query("
SELECT `date` ,`user_id`, SUM(hours) hours_plus
FROM `user_dolg`
WHERE `date` BETWEEN '$starttime' AND '$endtime'
GROUP BY `date`, `user_id`
выборка из БД вот такая будет:
надо подставить `date` в $gettingsDtae и sub_hours с провести сравнение
array_walk($items, function (&$value) use ($limit) {
$hours = $value['hours'];
if ($hours > $limit) {
$value['hours_plus'] = $hours - $limit;
}
else{
$value['hours_plus'] = 0;
}
});
я не пойму как подставить циклом даты из таблицы и я не уверен в правильности php кода который array_walk
и не особо важный вопрос, что будет с сайтом если я запрошу данные за год, там будет ~2000-7000 запросов
кто что посоветует?