International PHP Conference Berlin 2025

gmstrftime

(PHP 4, PHP 5, PHP 7, PHP 8)

gmstrftime ロケールの設定に基づいて GMT/UTC 時刻/日付をフォーマットする

警告

この関数は PHP 8.1.0 で 非推奨 になります。この関数に頼らないことを強く推奨します。

この関数の代替として、これらが使えます:

説明

gmstrftime(string $format, ?int $timestamp = null): string|false

グリニッジ標準時を返すこと以外は、 strftime() と同じ動作をします。例えば、東部標準時 (GMT -0500) で実行した場合、以下の最初の行は "Dec 31 1998 20:00:00" を出力し、二行目は "Jan 01 1999 01:00:00" を出力します。

警告

この関数は、オペレーティングシステムのロケールの情報に依存しており、 情報が一貫していなかったり、全く利用できない可能性があります。 代わりに、IntlDateFormatter::format() を使いましょう。

パラメータ

format

strftime() の説明を参照ください。

timestamp

オプションのパラメータ timestamp は、 int 型の Unix タイムスタンプです。 timestamp が指定されなかったり、null だった場合のデフォルト値は、 現在の時刻です。言い換えると、デフォルトは time() の返り値となります。

戻り値

指定した timestamp または timestamp が指定されていない場合に現在のローカル時間を用いて、 指定したフォーマット文字列に基づき文字列をフォーマットして返します。 月および曜日の名前、およびその他の言語依存の文字列は、 setlocale() で設定された現在のロケールを尊重して表示されます。 失敗時には、false を返します。

変更履歴

バージョン 説明
8.0.0 timestamp は、nullable になりました。

例1 gmstrftime() の例

<?php
setlocale
(LC_TIME, 'en_US');
echo
strftime("%b %d %Y %H:%M:%S", mktime(20, 0, 0, 12, 31, 98)) . "\n";
echo
gmstrftime("%b %d %Y %H:%M:%S", mktime(20, 0, 0, 12, 31, 98)) . "\n";
?>

参考

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top