Web運用

2023/09/15 (金)

【PHP】毎日自動で変わるテキストを書く方法

PHPのロゴ

Webサイトで日ごとに自動更新される文章を作りたい場合、PHPを使うことにより再現することができます。

ソースコード

以下のソースコードは1日から31日までの一ヶ月分の文章を配列に格納し、その日の分の文章を表示させています。

<?php
  date_default_timezone_set('Asia/Tokyo');
  $arr = array(
    "",
    "1日のテキスト",
    "2日のテキスト",
    "3日のテキスト",
    "4日のテキスト",
    "5日のテキスト",
    "6日のテキスト",
    "7日のテキスト",
    "8日のテキスト",
    "9日のテキスト",
    "10日のテキスト",
    "11日のテキスト",
    "12日のテキスト",
    "13日のテキスト",
    "14日のテキスト",
    "15日のテキスト",
    "16日のテキスト",
    "17日のテキスト",
    "18日のテキスト",
    "19日のテキスト",
    "20日のテキスト",
    "21日のテキスト",
    "22日のテキスト",
    "23日のテキスト",
    "24日のテキスト",
    "25日のテキスト",
    "26日のテキスト",
    "27日のテキスト",
    "28日のテキスト",
    "29日のテキスト",
    "30日のテキスト",
    "31日のテキスト"
  );
  $count = 0;
  while($count<=31){
    if(date("j") == $count) {
      echo "<p>".$arr[$count]."</p>";
    }
    $count++;
  }
?>

解説

date_default_timezone_setで日本の時刻に合わせる。
arrayで一ヶ月分の文章を格納。
date(‘j’)で本日の日付を取得。

後はwhile文で31日分の繰り返し処理をして、if文でその日の分の文章のみを表示させているだけです。

注意

配列の一件目は空白にしたまま残してください。
0日目として反映されるので、何か文字を入れたとしてもWebサイトに表示されることはないです。

まとめ

当サークル、幻想遊戯団で毎日変わる文章を表示させたいという要望があったので実装しつつ、ググっても同じような情報が出てこなかったので備忘録として残しました。

ちなみに私はPHP7技術者認定初級を取得していますが、業務の役に立ったことはないです。(面接の役には立つかも…)

この記事を書いた人

BLOOD RECALL(ブラッドリコール)を購入する

ヒット作「ガンナガン」シリーズのプロデューサーZUMEと「ペンデュラム・ドールズ」シリーズの幻想遊戯団による合作。
血を力に変える「血廻想起者(ブラッドリコーラー)」となり、相手からの攻撃や自傷した際に流した血を代償に、過去の強者の技を使用して勝利せよ。

ブラッドリコールのパッケージデザイン

ご購入はコチラ