@adreanov

PHP include в зависимости от дня недели и времени?

Здравствуйте!
У меня на сайте используется код, который выводит содержание в зависимости от дня недели:
<? include($_SERVER['DOCUMENT_ROOT'].'/blocks/head.php');?>
<? if (date('l') == 'Sunday') {
    include($_SERVER['DOCUMENT_ROOT'].'/blocks/header-sun.php');
} if (date('l') == 'Monday') {
    include($_SERVER['DOCUMENT_ROOT'].'/blocks/header.php');
} if (date('l') == 'Tuesday') {
    include($_SERVER['DOCUMENT_ROOT'].'/blocks/header.php');
} if (date('l') == 'Wednesday') {
    include($_SERVER['DOCUMENT_ROOT'].'/blocks/header.php');
} if (date('l') == 'Thursday') {
    include($_SERVER['DOCUMENT_ROOT'].'/blocks/header.php');
} if (date('l') == 'Friday') {
    include($_SERVER['DOCUMENT_ROOT'].'/blocks/header-fri.php');
} if (date('l') == 'Saturday') {
    include($_SERVER['DOCUMENT_ROOT'].'/blocks/header-sat.php');
}?>

Как сделать еще одно условие: чтобы был вывод день неделя и например время 19:00-09:00 ?
Если это очень сложно, подскажите тогда проще - php include по условию интервала времени.
  • Вопрос задан
  • 614 просмотров
Пригласить эксперта
Ответы на вопрос 2
Keanor
@Keanor
Ведущий разработчик
Обязательно почитать про уязвимость типа RFI и LFI.

if (file_exists(DOCROOT . '/blocks/header-' . strtolower(date('l')) . '.php') {
    inclide DOCROOT . '/blocks/header-' . strtolower(date('l')) . '.php';
} else {
    inclide DOCROOT . '/blocks/header.php';
}

если принципиально нехочется переименовывать файлы то strtolower(substr(date('l'), 0, 3))

и в зависимости от времени дописать в имя файла day или night
Ответ написан
Therapyx
@Therapyx
Data Science
А что если сделать ход конем и сначала инициализировать переменную стринга для недели, после чего делать всего-лишь один инклюд. На подобии include($var + ".php")?
Точного синтаксиса не знаю, правильный алгоритм дал - дело за тобой ))
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы