日付を過ぎたら自動で非表示・表示を指定できるPHP関数

スポンサーリンク
サイト作成
スポンサーリンク

 

会社のWEBサイトでプロダクトの担当者から言われるのが、この日からこの日までキャンペーン告知をしておきたい。今日のこの時間だけ、サイトTOPにこの文言を入れてほしいといった要望が来ます。

最初からそういったことが起こるようのを想定して、WEBサイトを作成しておけば問題無いのですが、そーいった作りになっていない場合は、日付が来たら手動でUPしたり、削除する必要が出てきます。

でも、そんなことを行っているとUPし忘れ、削除し忘れが出てきました。そもそも、TODOリストに入れるのも、めんどくさいです。

PHPが動くサーバーであれば、strtotime関数を利用することで、自動で表示・非表示ができるようになります。

2013年10月1日の10時まで表示させたい場合は以下のように書けばOK。

24:00だと動かないので、23:59にしておきましょう。

<?php
if (strtotime(date('Y-m-d H:i')) < strtotime('2013-10-01 10:00')) 
{
echo 'ここに記述した内容が、2013年10月1日10時まで表示される';
}
?>

2013年10月1日の10時以降に表示させたい場合は以下のように。

<?php
if (strtotime(date('Y-m-d H:i')) > strtotime('2013-10-01 10:00')) 
{
echo 'ここに記述した内容が、2013年10月1日10時まで表示される';
}
?>

2013年10月1日の10時から、2013年10月14日20時まで表示させたい場合は以下のように。

<?php
$selectdate = strtotime(date('Y-m-d H:i'));

if ( $selectdate > strtotime('2013-10-01 10:00') and $selectdate < strtotime('2013-10-14 20:00'))
{
echo 'ここに、2013年10月1日10時から、2013年10月14日20時まで表示させたい内容を記載';
}
?>

date関数を使って同じ事が可能です。

指定した期日で表示する内容を変えるPHP関数(date関数)
期間限定のキャンペーンサイトを作成する際に、指定の期日が過ぎたら申込みを止めたいといった要望を受けます。 そんなときはPHPのdate関数と比較演算子と条件分岐を利用し、簡単に実現することが可能です。 <?php if (da...