ホームページ >バックエンド開発 >PHPチュートリアル >今夜はあなたが近くに感じます PHP strtotime関数の詳細な説明
まずマニュアルの紹介を読んでください:
strtotime - 英語テキストの日付と時刻の記述を Unix タイムスタンプに解析します
形式: int strtotime ( string $time [, int $now ] )
この関数は、米国英語の日付形式 連結では、now パラメータで指定された時刻、またはこのパラメータが指定されていない場合は現在のシステム時刻を基準にして、これを Unix タイムスタンプ (1970 年 1 月 1 日 00:00:00 GMT からの秒数) に解析しようとします。 。
この関数は、TZ 環境変数 (存在する場合) を使用してタイムスタンプを計算します。 PHP 5.1.0 以降、すべての日付/時刻関数で使用されるタイムゾーンを定義する簡単な方法が追加されました。このプロセスは、date_default_timezone_get() 関数のページに記載されています。
注: 指定された年が 2 桁形式の場合、その値 0 ~ 69 は 2000 ~ 2069 年を意味し、70 ~ 100 は 1970 ~ 2000 年を意味します。
パラメータ
time
GNU » Date Input Formatの構文に従ってフォーマットされた、解析された文字列。 PHP 5.0 より前では、ミリ秒は時間内で許可されていませんでした。PHP 5.0 以降では、ミリ秒は許可されますが、無視されます。
now
戻り値のタイムスタンプを計算するために使用されます。 このパラメータのデフォルト値は現在の時刻 time() で、他の時刻のタイムスタンプに設定することもできます (恥ずかしいことに私はこの機能を常に無視してきました)
戻り値: 成功した場合はタイムスタンプを返し、それ以外の場合は FALSE を返します。 PHP 5.1.0 より前では、この関数は失敗すると -1 を返し、それ以降のバージョンでは false を返しました
strtotime の最初のパラメータには、「2008-8-20」や「2000 年 9 月 10 日」などの一般的な英語の時刻形式を指定できます。 。 「+1 日」など、現在のパラメータに基づく時間の説明にすることもできます。
以下は、後者の方法で利用可能なパラメータのリストです。ここで、「現在時刻」は strtotime の 2 番目のパラメータの値を指し、デフォルトは現在時刻です。
1 月、日本語、英語名のリスト。一般的な略語:
1月、2月、3月、4月、5月、6月、7月、8月、9月、9月、10月、11月、12月、
日曜日、月曜日、火曜日、火曜日、水曜日、水曜日、木曜日、木曜日、 friday、saturday
2. 時間パラメータと詳細な説明:
am: 時刻は正午より前
pm: 時刻は正午以降
year: たとえば、「next year」は来年を表します。
month: 1 か月; たとえば、「先月」 month は前月を表します
2 週間; たとえば、「a fortnight ago」 2 週間は 2 週間前を表します
week : 1 週間
day: 1 日
hour: 1 時間
minutes : 分
min : 分と同じ
Second : 秒 sec : 秒と同じ
3 .関連および連続する命令:
+n/-n:現在の時刻に指定した時刻を加算または減算して計算します。たとえば、「+1 時間」は、現在時刻に 1 時間を加えたものを意味します。「24 "時間前" など。現在に基づいてカウントします。たとえば、「24 時間前」は「24 時間前」を意味します
明日: 現在の日時より 24 時間後 現在の時刻 (日付と時刻を含む) に基づいて、明日の同じ時刻
昨日: 24 時間前現在の日時より 現在時刻(日時を含む)を基準に、昨日と同じ時刻
today : 現在の日時 現在時刻(日時を含む)
now : 現在の日時 現在の時刻(日時を含む)日付と時刻)
last : 「前の」を意味する修飾子。たとえば、「last tuesday」は「前の火曜日」を表します。
this : 期間中の指定された時刻。現在の日または指定された時刻の次の出現。たとえば、「this 7am」は当日の 07:00 のタイムスタンプを示し、「this Week」は現在の時刻から 1 週間のタイムスタンプを示します。その日の時刻を指定します。または、次の期間のタイムスタンプ。たとえば、「this 7am」はその日の 7:00 のタイムスタンプを示し、「this Week」は現在時刻 (現在時刻) から始まる 1 週間全体のタイムスタンプを示します。私がテストしました: strtotime('this week')=strtotime('now'));
next : 対象の現在時刻に 1 を加えた値を意味する修飾子。たとえば、「次の時間」の現在時刻に指定された時刻を加えたものです。たとえば、「次の時間」は、現在の時刻に 1 時間を加えたもの、つまり 3600 を指します。
//最初に来てください。次の
first: 序数修飾子、例: " 5 月の最初」 (実際には、次と同じです)
3 番目: 最初に参照 (2 回目の値と競合するため、通常性を示す「2 番目」がないことに注意してください)
4 番目: 最初に参照
5 番目: 最初に参照
6:最初に見る
7:最初に見る
8:最初に見る
9:最初に見る
10:最初に見る
12:最初に見る
4. タイムゾーンの説明:
gmt:グリニッジ標準時
ut : 協定世界時
utc : ut と同じ
wet : 西ヨーロッパ時間
bst : イギリス夏時間
wat : 西アフリカ時間
at : アゾレス諸島時間
ast : 大西洋標準時
adt : 大西洋夏時間
est : 東部標準時間時刻
edt : 東部夏時間
cst : 中部標準時
cdt : 中部夏時間
mst : 山岳部標準時
mdt : 山岳部夏時間
pst : 太平洋標準時
pdt : 太平洋夏時間
yst : ユーコン標準時
ydt : ユーコン準州夏時間
hst : ハワイ標準時
hdt : ハワイ夏時間
cat : アラスカ中部時間
akst : アラスカ標準時
akdt : アラスカ夏時間
ahst : アラスカ・ハワイ標準時
nt : ノーム時間
idlw : 日付変更線西
cet : 中央ヨーロッパ時間
met : 中部ヨーロッパ時間
mewt : 中部ヨーロッパ冬時間
mest : 中部ヨーロッパ夏時間
mesz : 中部ヨーロッパ夏時間
swt : スウェーデン冬時間
sst : スウェーデン夏時間
fwt : フランス冬時間
fst : フランス夏時間
eet : 東ヨーロッパ時間、ソ連ゾーン 1
bt : バグダッド時間、ソ連ゾーン 2
zp4 : ソ連ゾーン 3
zp5 : ソ連ゾーン 4
zp6 : ソ連ゾーン 5
wast : 西オーストラリア標準時
wadt : 西オーストラリア夏時間
cct : 中国海岸時間、ソ連ゾーン 7
jst : 日本標準時、ソ連ゾーン 8
east : 東オーストラリア標準時
eadt : 東オーストラリア夏時間
gst : Guam Standard Time, USSR Zone 9
nzt: ニュージーランド時間
nzst: ニュージーランド標準時
nzdt: ニュージーランド夏時間
idle: 国際日付変更線東
PHP には strtotime という関数があります。 strtotime 実装関数: 特定の日付のタイムスタンプを取得する、または特定の時刻のタイムスタンプを取得します。strtotime は、英語テキストの日付と時刻の記述を Unix タイムスタンプに解析します [システム時刻を Unix タイムスタンプに変換します]
1. 指定された日付の UNIX タイムスタンプを取得します
strtotime("2009-1-22") 例は次のとおりです。次のように:
1 .echo strtotime("2009-1-22")
結果: 1232553600
説明: 2009 年 1 月 22 日 0:00:00 のタイムスタンプを返します。
2 番目に、英語のテキストの日付と時刻を取得します。例は次のとおりです。
比較が簡単、date を使用して現在のタイムスタンプと指定されたタイムスタンプをシステム時間に変換します
(1) 明日のこの時間のタイムスタンプを出力します strtotime("+1 day")
現在時刻:
1. echo date("Y-m-d H:i:s ",time())
結果: 2009-01-22 09:40:25
指定された時刻:
1.echo date("Y-m-d H:i:s",strtotime( "+1 day"))
結果: 2009-01-23 09:40:25
(2) この時点で昨日のタイムスタンプを出力します strtotime("-1 day")
現在時刻:
1.echo date( "Y-m-d H:i:s",time( ))
結果: 2009-01-22 09:40:25
指定された時刻:
1.echo date("Y-m-d H:i:s",strtotime("-1 day"))
結果: 2009-01-21 09:40:25
(3) 来週のこの時刻のタイムスタンプを出力します strtotime("+1 year")
現在時刻:
1.echo date("Y-m-d H :i:s",time())
結果: 2009-01-22 09:40:25
指定された時刻:
1.echo date("Y-m-d H:i:s",strtotime("+1 週間") )
結果: 2009-01-29 09 :40:25
(4) 先週のこの時刻のタイムスタンプを出力します strtotime("-1 year")
現在時刻:
1.echo date("Y-m-d H:i: s",time())
結果:2009-01-22 09:40:25
指定時刻:
1.echo date("Y-m-d H:i:s",strtotime("-1週間"))
結果: 2009-01-15 09:40 :25
(5) 指定した次の曜日のタイムスタンプを出力します strtotime("次の木曜日")
現在時刻:
1.echo date("Y-m-d H:i:s ",time())
結果: 2009-01-22 09:40:25
指定された時刻:
1.echo date("Y-m-d H:i:s",strtotime("next Wednesday"))
結果: 2009 -01-29 00:00:00
(6 )指定した曜日のタイムスタンプを出力します strtotime("last Wednesday")
現在時刻:
1.echo date("Y-m-d H:i:s",time ())
結果: 2009-01-22 09:40 :25
指定時刻:
1.echo date("Y-m-d H:i:s",strtotime("last Wednesday"))
結果: 2009-01- 15 00:00:00
上記の例からわかるように、strtotime は、英語テキストの日付と時刻の記述を Unix タイムスタンプに解析して、日付と時刻をフォーマットするために mktime() または date() を組み合わせます。指定されたタイムスタンプを取得し、必要な日時を取得します。
この記事を紹介した後、strtotime関数の使い方をマスターしていただければ幸いです。
上記では、tonight i Feel close to you の内容を含め、PHP strtotime 関数の詳細な説明を紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。