English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP基本教程

PHP上級教程

PHP & MySQL

PHPリファレンスマニュアル

PHP strtotime() 函数の用法と例

PHP Date & Time 函数マニュアル

strtotime()関数は、どんな文字列の日期時間の記述もUnixタイムスタンプに解析します。

定義と用法

strtotime()関数関数はテキスト日付を含む/時間値の日付/時間文字列を解析し、Unixタイムスタンプとして解釈します。

注意:年が2桁のフォーマットで表される場合、値0-69 にマッピングされます。 2000-2069値 70-100は 1970-2000。
注意:m/d/yまたはd-m-y形式の日付、セパレータが斜線(を使用する場合、/)を使用する場合、アメリカのmを使用します。/d/y形式。セパレータが横線(を使用する場合、-)または点(.)を使用する場合、ヨーロッパのdを使用します。-m-y形式。潜在的なエラーを避けるために、可能な限りYYYYを使用してください。-MM-DD形式またはdate_create_from_format()関数を使用して。

文法

strtotime($time)

パラメータ

序号パラメータ及び説明
1

time(必須)

この値は日付を表します。/時間文字列。

2

now(オプション)

これはタイムスタンプを表し、相対的な日付の計算の基礎として使用されます。

返り値

PHPのstrtotime()関数は指定された日付文字列のタイムスタンプ値を返します。失敗すると、この関数はボルン値を返します。false

PHPバージョン

この関数は最初にPHPで 4.0版で導入され、すべての上位バージョンで使用できます。
PHP 5.3.0:現在の相対時間形式、例えば今週、先週、先週の週、次週、指定の週は月曜日から日曜日まで、現在の日付に基づいていない/時間の前後 7 日。
PHP 5.3.0:現在 24:00 は有効な形式です。
PHP 5.2.7:このより古いバージョンでは、月の特定の日を指定して、その日がその月の最初の日である場合、誤ってその日付に1週間を加えて返しますが、これは既に修正されています。
PHP 5.1.0:失敗するとFALSEを返します(このより古いバージョンでは -1),E_STRICTとE_NOTICEのタイムゾーンエラーを追加しました。
PHP 5.0.2:現在、"now"や他の相対時間は現在時刻に基づいて正確に計算されますが、今日の午前0時に基づいて計算されるわけではありません。
PHP 5.0.0:マイクロ秒(ただし、マイクロ秒は通常無視されます)。

オンラインサンプル

以下の例では、strtotime()関数の使い方-

<?php
   $str = strtotime("12 September 2009");
   print("Timestamp: ".$str); 
?>
テストを見てみましょう‹/›

出力結果

Timestamp: 1252713600

オンラインサンプル

引数を渡すと“ now”引数として渡されると、この関数は現在のタイムスタンプを返します

<?php
   $str = strtotime("now");
   print("Timestamp: ".$str); 
?>
テストを見てみましょう‹/›

出力結果

Timestamp: 1589369948

オンラインサンプル

今、様々な日付値を渡してこのメソッドを呼び出しましょう-

<?php
// 時区を設定します
date_default_timezone_set("PRC");
$time = strtotime("2020-01-18 08:08:08");  // 指定された日付をタイムスタンプに変換します 
// 現在の時間を出力します PHP_EOL 改行符、異なるシステムに対応
echo  $time, PHP_EOL;
 
// さらに例
echo strtotime("now"), PHP_EOL;
echo strtotime("now"), PHP_EOL;
echo strtotime("10 September 2019"), PHP_EOL;
echo strtotime("+1 day"), PHP_EOL;
echo strtotime("+1 week"), PHP_EOL;
echo strtotime("+1 week 2 days 4 hours 2 seconds"), PHP_EOL;
echo strtotime("next Thursday"), PHP_EOL;
echo strtotime("last Monday"), PHP_EOL;
?>
テストを見てみましょう‹/›

これにより以下の結果が生成されます-

1579306088
1596165501
1596165501
1568044800
1596251901
1596770301
1596957503
1596643200
1595779200

オンラインサンプル

をYYYYの形式にフォーマットします-MM-DD、日付を出力します

<?php
   $timestamp = strtotime( "February 15, 2015" );   
   print date( 'Y-m-d', $timestamp );
?>
テストを見てみましょう‹/›

これにより以下の結果が生成されます-

2015-02-15