.Water-Sunlight
.サイトメニュー
.検索
.オンライン状況
登録ユーザ: 0
ゲスト: 4
.
<< Prev
シリアライズ
« INDEX »
PHP 文法編
Next >>
数学関数
作成日:2006/05/10

1X その他のよく使う関数

1X.1 日付/時刻

構文説明
int time ( void )

現在時刻をUnixエポック(1970年1月1日 00:00:00 GMT)からの通算秒 として返します。

用例:
$nextWeek = time() + (7 * 24 * 60 * 60);  // 来週
echo date('Y-m-d', $nextWeek);
array getdate
([int timestamp])

timestamp に対する日付情報の連想配列を返します。 timestamp が省略された場合は、現在のローカル時刻に対する情報を返します。

返される連想配列:
キー値の型
'seconds'
数値:0 〜 59
'minutes'
数値:0 〜 59
'hours'  
数値:0 〜 23
'mday'   
月単位の日数値:1 〜 31
'wday'   
曜日 数値:0(日曜) 〜 6(土曜)
'mon'    
数値:1 〜 12
'year'   
数値:4桁
'yday'   
年単位の日数値:0 〜 365
'weekday'
曜日 文字:'Sunday' 〜 'Saturday'
'month'  
文字:'January' 〜 'December'
'0'      
UNIX時 数値:1970年1月1日からの秒数
int mktime
([int hour
[,int minute
[,int second
[,int month
[,int day
[,int year
[,int is_dst]]]]]]] )

引数で指定された日時のタイムスタンプを返します。 このタイムスタンプは、Unixエポック(1970年1月1日 00:00:00 GMT)からの通算秒を表す長整数です。

省略された引数は、ローカルの日付と時刻に従って、現在の値にセットされます。 is_dst はサマータイムの時に 1 にセットされ、そうでない時に 0 に、 サマータイムであるかどうかが不明である場合に -1 にセットされます。

mktime() は範囲外の入力を自動的に修正して計算します。

用例:全て2000-01-01
mktime (0,0,0,1,  1,2000); // 2000-01-01
mktime (0,0,0,12,32,1999); // 1999-12-32 =>2000-01-01
mktime (0,0,0,13, 1,1999); // 1999-13-01 =>2000-01-01

指定した月(month)の0番目の日は、前月の最後の日を表します。

用例:
mktime (0,0,0,1, 0,2000); // 2000-01-00 =>1999-12-31
mktime (0,0,0,13,0,1999); // 1999-13-00 =>1999-12-31

$now = getdate();
mktime (0,0,0,$now['mon'],  1, $now['year']); // 当月1日
mktime (0,0,0,$now['mon']+1,0, $now['year']); // 当月最後の日
int checkdate
( int month,
  int day,
  int year )

引数で指定された日付(month/day/yaer)が有効であれば TRUE を返し、そうでなければ FALSE を返します。 妥当性は 以下の事から判断されます。

  • year が 1 〜 32767 の間であること
  • month が 1 〜 12 の間であること
  • day が 1 〜 month の日数以内であること(うるう年 (year)も考慮されます)
string date
( string format
[,int timestamp] )

指定された timestamp を、文字列 format によりフォーマットした日付文字列を返します。 timestamp が省略された場合は、現在のローカル時刻(time()の値)が使われます。

用例:
// 現在の日時をYYYY:MM:DD HH:MM:SSで表示する
echo date('Y/m/d H:i:s');

// 明日
mktime(0,0,0, date("m",$now),  date("d",$now)+1,date("Y",$now)  );

// 前月
mktime(0,0,0, date("m",$now)-1,date("d",$now),  date("Y",$now)  );

// 来年
mktime(0,0,0, date("m",$now),  date("d",$now),  date("Y",$now)+1);

※ date関数の書式文字(format)については以下を参照して下さい。


date関数の書式文字:
書式文字説明返される値の範囲 または 例
良く使う日付・時刻の書式
y
年 (2 桁の数字) 例: 99 または 03
Y
年 (4 桁の数字) 例: 1999 または 2003
n
月 (先頭にゼロを付けない)1 〜 12
m
月 (先頭にゼロを付ける) 01 〜 12
M
月 (3文字形式) Jan 〜 Dec
F
月 (フルスペル形式) January 〜 December
j
日 (先頭にゼロを付けない)1 〜 31
d
日 (先頭にゼロを付ける) 01 〜 31
w
曜日 (数値) 0 (日曜) 〜 6 (土曜)
D
曜日 (3文字形式) Mon 〜 Sun
l
曜日 (フルスペル形式) Sunday 〜 Saturday
a
午前または午後 (小文字) am または pm
A
午前または午後 (大文字) AM または PM
g
時。12時間単位 (先頭にゼロを付けない)1 〜 12
G
時。24時間単位 (先頭にゼロを付けない)0 〜 23
h
時。12時間単位 (先頭にゼロを付ける) 01 〜 12
H
時。24時間単位 (先頭にゼロを付ける) 00 〜 23
i
分 (先頭にゼロを付ける) 00 〜 59
s
秒 (先頭にゼロを付ける) 00 〜 59
その他の書式
B
Swatchのインターネット時間 000 〜 999
I
サマータイム中か否か 1:サマータイム中 0:そうではない
L
閏年であるかどうかを表す論理値 1:閏年 0:閏年でない
O
グリニッジ標準時(GMT)との時間差 例: +0200
r
RFC 822 フォーマットされた日付 例: Thu, 21 Dec 2000 16:01:07 +0200
S
英語形式の序数を表すサフィックス 2文字
jと一緒に使用することができる
st, nd, rd または th
t
指定した月の日数 28 〜 31
T
このマシーンのタイムゾーンの設定 例: EST, MDT ...
U
Unix 時(1970年1月1日0時0分0秒)からの秒数
W
ISO-8601 月曜日に始まる年単位の週番号 例: 42 (1年の第42週目)
z
年間の通算日(数字) 0 〜 366
Z
タイムゾーンのオフセット秒数
UTC西側のオフセットは負、UTC東側のオフセットは正です
-43200 〜 43200

GMTとUTC
GMT(グリニッジ標準時) は天体観測によって時刻を定めている時刻です。GMTの他にUTC(世界協定時)というのがあります。 UTCは原子時計と(潮力による地球自転の遅延を補正する為の)閏秒によって時刻を定めています。
<< Prev
シリアライズ
« INDEX »>
Page Top
Next >>
数学関数

.