前提・実現したいこと
PHP初心者です。
条件分岐により表示するページをリダイレクトで分けたいと考えています。
また、SEOの対策は不要と考えています。
【希望】
■土日の場合は終日別ページへ移動
■平日8時〜20時は昼用のページ(リダイレクトしない)
■平日20時〜翌日の8時は夜用のページ(リダイレクトする)
このようなイメージです。
エラーメッセージ
Parse error: syntax error, unexpected 'elseif' (T_ELSEIF) in /HPのURL.php on line 7
該当のソースコード
php
1<?php 2date_default_timezone_set('Asia/Tokyo'); 3$time = date('G'); 4$day = date('w') 5if ($day == 6 || $day == 0) { 6 header('Location: URL'); 7 exit(0);} 8elseif (0 <= $time && $time <= 8) { 9 header('Location: URL'); 10 exit(0);} 11elseif (20 <= $time && $time <= 24) { 12 header('Location: URL'); 13 exit(0); 14} 15//それ以外 headerリダイレクト+exitしているのでelseは必要なし 16?>
試したこと
平日のみであれば、エラーなくこちらのコードで実装できました。
php
1<?php 2date_default_timezone_set('Asia/Tokyo'); 3$time = date('G'); 4if (0 <= $time && $time <= 8) { 5 header('Location: URL'); 6 exit(0);} 7elseif (20 <= $time && $time <= 24) { 8 header('Location: URL'); 9 exit(0); 10} 11//それ以外 headerリダイレクト+exitしているのでelseは必要なし 12?>
補足情報①
SEOの対策は不要です。
サイト自体への集客はできる状態で、リダイレクト先に評価を渡す必要はありません。
補足情報②
文法の末尾の?>が余分だったということでしょうか?
下記の記述で正しいでしょうか?
php
1<?php 2date_default_timezone_set('Asia/Tokyo'); 3$time = date('G'); 4$day = date('w'); 5if ($day == 6 || $day == 0) { 6header('Location: URL'); 7exit(0);} 8elseif (0 <= $time && $time <= 8) { 9header('Location: URL'); 10exit(0);} 11elseif (20 <= $time && $time <= 24) { 12header('Location: URL'); 13exit(0); 14} 15//それ以外 headerリダイレクト+exitしているのでelseは必要なし
回答2件
あなたの回答
tips
プレビュー