PHPで曜日を取得する方法を現役エンジニアが解説【初心者向け】

初心者向けにPHPで曜日を取得する方法について現役エンジニアが解説しています。PHPで曜日など日付を扱うにはdate関数を使います。曜日を取得するには日付フォーマットにwを指定します。日曜日が0から始まり、6が土曜日になります。PHPのdate関数で曜日を取得する方法を解説します。

TechAcademyマガジンは受講者数No.1のオンラインプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。

今回は、PHPで曜日を取得する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

 

PHPについてそもそもよく分からないという方は、PHPとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプ、PHP/Laravel講座の内容をもとに紹介しています。

 

田島悠介

今回は、PHPに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

PHPで曜日を取得する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 
この記事は、PHPで曜日を取得する方法について、PHPでの開発にまだ慣れていない方でも分かるように解説しています。
 

目次

 

date関数とは

PHPのdate関数とは、指定した時刻を指定したフォーマットに変換するための関数です。

使用方法:

date($フォーマット [, $UNIXタイムスタンプ])

date関数の第一引数には、変換したい日時フォーマットを文字列で渡します。

date("Y/m/d H:i:s")

第二引数には、オプションでUNIXタイムスタンプを渡します。

UNIXタイムスタンプとは、協定世界日時(UTC)という日時の世界基準で表現した1970年1月1日午前0時0分0秒から経過した秒数です。

下記サンプルコードで、現在時刻をdate関数でフォーマットする方法について記載していますので、date関数の使用方法をここで確認しましょう。

現在時刻をdate関数でフォーマット:

<?php
// タイムゾーンを東京に設定
date_default_timezone_set("Asia/Tokyo");

// 1970年1月1日0時0分0秒から現在までの経過秒数
echo time()."\n";

// 現在時刻を"Y/m/d H:i:s"の形にフォーマット
echo date("Y/m/d H:i:s", time());
?>

実行結果:

1587890282
2020/01/01 12:15:50

 

[PR] PHPのプログラミングで挫折しない学習方法を動画で公開中

date関数を利用して曜日を取得する方法

date関数の第一引数のフォーマットに”I”または”D”を渡すことで、英語表記の曜日を取得可能です。

日本語の曜日を取得する場合は、フォーマットに”w”を渡して、各曜日に振られた番号を取得できるので、これを利用します。(日曜0-土曜6)
 

実際に書いてみよう

それでは、date関数のフォーマットに”w”を渡して、日本語の曜日を取得する方法について例を見ていきましょう。

サンプルコード:

<?php
// 日本語の曜日を配列に格納
$week = ["日", "月", "火", "水", "木", "金", "土"];

// 今日の曜日を取得する(今日の曜日:日曜日 → 曜日番号0)
echo $week[date("w")];
?>

実行結果:

上記のサンプルコードでは、日本語曜日を配列$weekを作成して、date関数に”w”のフォーマットを渡すことで、曜日番号を取得し、曜日配列$weekにセットすることで、本日の曜日を出力しています。
 

まとめ

今回の記事では、date関数の使い方とdate関数を使用した曜日の取得方法を紹介しました。

実際の現場でもWebサイトに曜日を表示するような場面は多いと思いますので、date関数による曜日の取得方法はしっかり習得しておきましょう。
 

筆者プロフィール

平野大輝(ひらのだいき)

スキル:PHP・Java・JavaScriptを用いて様々なアプリを開発するWebエンジニア。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間で、PHPやフレームワークのLaravelを使ってWebアプリケーション開発を習得できる、オンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。