Nicelogin
@Nicelogin
Привет!

Почему не работает код?

Привет! Идея в том чтобы выводить на сайте четная сейчас неделя или нечетная. У меня есть вот такой код:
<?
$siteglobal['insert']['week'] = '';
$start = 2;
$day = date("z");
$stat=1;
for( $i=$day-$start; $i>6 ; $i-=7){
     $stat++;
}
$i=1;
for( $i=$stat; $i>2; $i-=2){}
$siteglobal['insert']['week'] = "".date("j.m.Y")."<br />";
switch($i){
     case 1:  $siteglobal['insert']['week'].= "<span style=\"color:#3180c2\">Четная неделя</span>"; break;
     case 2:  $siteglobal['insert']['week'].= "<span style=\"color:#3180c2\">Нечетная неделя</span>"; break;
     default: $siteglobal['insert']['week'].= "Неизвестная ошибка!";
}
 
echo $siteglobal['insert']['week'];
?>

к сожалению четная / нечетная недели не меняется, если меняются то не верно. Есть ли в коде ошибка?
  • Вопрос задан
  • 173 просмотра
Пригласить эксперта
Ответы на вопрос 1
Stalker_RED
@Stalker_RED
Вместо 'z' используйте 'W'
W Порядковый номер недели года в соответствии со стандартом ISO-8601; недели начинаются с понедельника Например: 42 (42-я неделя года)


$msg = date('W') % 2 ? 'Нечетная неделя' : 'Четная неделя';
$siteglobal['insert']['week'] = date("j.m.Y") . "<br />" . $msg;

echo $siteglobal['insert']['week'];

sandbox.onlinephpfunctions.com/code/bb9286eacdbeac...
Ответ написан
Ваш ответ на вопрос

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

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