gmstrftime
| 解説 | ロケールの設定に基づいて日時を書式化し、GMTの日付で取得する |
|---|---|
| 書式 | string gmstrftime( string format [, int timestamp ] ) |
string gmstrftime( string 書式 [, int タイムスタンプ ] ) |
|
| 引数 |
format
フォーマットする書式
|
timestamp
Unixタイムスタンプ
|
|
| 返値 | 指定した書式でフォーマットされた文字列 |
gmstrftime()は、第2引数で指定されたタイムスタンプを第1引数で指定したフォーマット文字によってフォーマット(整形)し、整形後の文字列を返します。
strftime()関数と機能や使用方法は同じですが、gmstrftime()関数の場合は返される時刻がグリニッジ標準時(GMT)となります。
format
書式
timestamp
タイムスタンプ
gmstrftime()はgmdate()関数と同じ働きを持っていますが、書式化に使用するフォーマット文字が違います。また、setlocale()で出力したいロケールを設定する事ができ、ロケールの設定によって曜日や月の名前が変化します。
参考関数
strftime()---- ロケールの設定に基づいて日時を書式化するdate()---- 日付・時刻を書式化するmktime()---- 指定した日時のUNIXタイムスタンプを取得するsetlocale()---- ロケール情報をセットする
フォーマット文字一覧
strftime()のフォーマット文字一覧です。gmstrftime()でも同じフォーマット文字を使用します。
この表に挙げられているフォーマット文字は、使用するCライブラリによってはサポートされていない可能性があります。
| フォーマット文字 | 説明 | |
|---|---|---|
| %a | 短縮された曜日の名前 | |
| %A | 完全な曜日の名前 | |
| %b | 短縮された月の名前 | |
| %B | 完全な月の名前 | |
| %c | 適当な日付と時間の表現 | |
| %C | 世紀(年)を100で割り、整数に丸めたもの。(00 〜 99) | |
| %d | 日付を10進数で。(01 〜 31) | |
| %D | 現在の日付。%m/%d/%yと同じ | |
| %e | 月単位の日付を10進数で表したもの。日付が1桁の場合は、前に空白を一つ付けます。(1 〜 31) | |
| %h | %bと同じ。 | |
| %H | 時間を24時間表示の10進数で(00 〜 23) | |
| %I | 時間を12時間表示の10進数で(01 〜 12) | |
| %j | 年間での日付を10進数で表現(001 〜 366) | |
| %m | 月を10進数で表現(01 〜 12) | |
| %M | 分を10進数で表現 | |
| %n | 改行文字 | |
| %p | 指定した時間により"am"または"pm"、または現在のロケールに対応した文字列 | |
| %r | a.m.およびp.m.表記で表した時間 | |
| %R | 24時間表記で表した時間 | |
| %S | 秒を10進数で表現 | |
| %t | タブ文字 | |
| %T | 現在の時間。%H:%M:%Sと同じ。 | |
| %u | 10進数表記の曜日(1 〜 7)1が月曜日。 | |
| %U | 年間で何番目の週であるかを10進数で表現。年間で最初の日曜を最初の週の最初の日として数えます。 | |
| %V | ISO 8601:1988で規定された現在の年の週番号の10進数表現(01 〜 53)。1は最初の週でその週は現在の年に最低4日はあります。週は月曜日から始まります。 | |
| %W | 現在の年で何番目の週であるかを10進数で表現。年間で最初の月曜を最初の週の最初の日として数えます。 | |
| %w | 曜日を10進数で表現。日曜は0になります。 | |
| %x | 時間を除いた日付 | |
| %X | 日付を除いた時間 | |
| %y | 世紀の部分を除いた年を10進数として表現。(00 〜 99) | |
| %Y | 世紀を含む年を10進数で表現 | |
| %Z | タイムゾーンまたはその名前または短縮形 | |
| %% | "%"文字そのもの |
この表に挙げられている以外の文字列があればその文字列はそのまま出力されます。
サンプルスクリプト
簡単な利用例
<?php
//フォーマット文字が使用可能である必要があります。
echo gmstrftime( "%D %T" )."<br />\n";
echo strftime( "%D %T" );
?>
出力結果
12/01/08 20:44:20
12/02/08 05:44:20
12/02/08 05:44:20


