ポンクソフト

日付・時刻に関する関数 - PHPで日付・時刻の計算

前ページ PHPで日付・時刻の計算 TOP 次ページ

目次

  1. PHPで日付・時刻の計算
  2. 日付・時刻に関する関数
  3. 年齢計算
  4. 今月のカレンダー
  5. 年月を指定できるカレンダー
  6. 予定表
  7. 予定表(単一ソース)

time関数

現在のUNIXタイムスタンプを返す関数です。

説明

int time(void)
現在時刻をUnix epoch(1970年1月1日 00:00:00 GMT)からの通算秒として返します。

サンプル

print time();
以下のような数値が出力されます。
1063785395

date関数

日付・時刻を書式化する関数です。

説明

string date(string format [, int timestamp])
引数 timestamp で指定されたUNIXタイムスタンプを、与えられたフォーマット文字列によりフォーマットし、日付・時刻文字列を返します。 timestamp が省略された場合は現在の時刻、つまり time() の値が使われます。

よく使われるフォーマット文字

 説明戻り値の例
a午前または午後(小文字)am または pm
A午前または午後(大文字)AM または PM
d日。二桁の数字01 から 31
g時。12時間単位。先頭にゼロを付けない。1 から 12
G時。24時間単位。先頭にゼロを付けない。0 から 23
h時。数字。12 時間単位。01 から 12
H時。数字。24 時間単位。00 から 23
i分。先頭にゼロをつける。00 から 59
j日。先頭にゼロをつけない。1 から 31
L閏年であるかどうかを表す論理値。1 なら閏年。0 なら閏年ではない。
m月。数字。先頭にゼロをつける。01 から 12
n月。数字。先頭にゼロをつけない。1 から 12
s秒。先頭にゼロをつける。00 から 59
t指定した月の日数。28 から 31
w曜日。数値。0 (日曜)から 6 (土曜)
Y年。4 桁の数字。例: 1999 や 2003
y年。2 桁の数字。例: 99 や 03

サンプル

print date("Y年m月d日 H時i分s秒", time());
以下のように現在時刻がフォーマットされて出力されます。
2003年09月18日 10時52分31秒
現在時刻をフォーマットする場合は以下のように timestamp を省略できます。
print date("Y年m月d日 H時i分s秒");

strtotime関数

フォーマットされた日時をUNIXタイムスタンプに変換する関数です。

説明

int strtotime(string time)
引数 time にフォーマットされた日付・時刻文字列を指定して関数を呼び出すと、UNIXタイムスタンプへ変換して返します。失敗すると-1を返します。
データベースの日付・時刻・タイムスタンプ型などからUNIXタイムスタンプを取得したいときなどに便利です。

よく使われるフォーマットの例

文字列意味
2003-09-182003年9月18日
2003/09/182003年9月18日
09/18今年の9月18日
3 day3日後
-2 day2日前
2 week2週間後
1 year1年後
1 week 2 day1週間と2日後
11:27:3511時27分35秒
11:2711時27分00秒
1111時00分00秒
2003-09-18 11:27:352003年9月18日 11時27分35秒
4 hour4時間後
10 minute10分後
30 second30秒後
1 week 10 minute 30 second1週間と10分30秒後

サンプル

print strtotime("2003-09-18 11:27:35");
以下のように出力されます。
1063852055
また、以下のように日付を分かりやすい形式に変換するのにも使えます。
print date("Y年m月d日 H時i分s秒", strtotime("2003-09-18 11:27:35"));
以下のように出力されます。
2003年09月18日 11時27分35秒

mktime関数

引数で指定された日時をUNIXタイムスタンプとして取得する関数です。

説明

int mktime(int hour, int minute, int second, int month, int day, int year)
与えられた引数に従ってUNIXタイムスタンプを返します。引数は右から順に省略することが可能で、省略されると現在日時に設定されます。

サンプル

print mktime(10, 22, 30, 5, 1, 2003);
以下のように 2003/5/4 10:22:30 をUNIXタイムスタンプにしたものが出力されます。
1051752150
また、以下のようにしても同じ値が出力されます。
print mktime(10, 22, 30, 4, 31, 2003);
なぜなら、mktime関数には、日付や時刻に大きい値を指定しても、繰り上げて正常な日時に直してくれる機能があるからです。
例えば、今年の2月の最後の日を表示したければ
print date("d", mktime(0, 0, 0, 3, 0));
とすればOKです。
前ページ PHPで日付・時刻の計算 TOP 次ページ
このエントリーをはてなブックマークに追加 そっか0

このページに関するコメントをどうぞ

お名前:


wentgt
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/25 00:08

初心者
メールソフトの設定ってどうやるのですか...
gmailに送りたいのですが...
2017/01/24 21:33

enveloptf
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/24 21:23

paywinlv
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/24 18:04

anklebitcw
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/24 11:35

butterfxa
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/24 03:37

nhadeptronmr
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/23 20:39

nhadeptronlv
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/23 15:24

sinforve
すべての
calltrackingsource.com 13s.info nhadeptrongoi.com kashinvestment.com csgo-butterfly.com anklebitergaming.com
csfire.pro envelopesstore.com ginastarmusic.com mp3-teca.com csgoodstakes.com
went.black 2pay4win.com appliancerepairsnearme.com oferta-netflix.com
techitax.com csprey.com lightshadowspace.com csboom.pro
投稿者
2017/01/23 12:46

calltrackju
すべての
cbbnews24.com
csgobooms.com
csgojoybets.com
incareersjobs.com
stcmidtenn.org
thewill.in
sakirkaratas.com
apexturnkey.in
medray.in
applevalleymarket.com
b8b90.com
danhhotgay.com
cstopstake.com
nsm.org.in
vov-fc.com
csgohugepots.com
eaglesapparelshop.com
mymobileappmobiappssub2016.com
sbppl.org
gracedental.in
kehulin.com
cheappricetoyou2015.com
vamortgageloantexas.com
doitacdoanhnghiep.com
techimanage.com
elmi.co
upea.in
esncordoba.org
goal888cash.com
fullebookz.com
2winde222.com
投稿者
2017/01/23 09:37

残りを読む »