ホームページ  >  記事  >  バックエンド開発  >  php DateTimeのよくあるメソッドを詳しく解説

php DateTimeのよくあるメソッドを詳しく解説

怪我咯
怪我咯オリジナル
2017-07-06 10:54:531695ブラウズ

この記事では、誰でも簡単に見つけて読めるように、DateTime オブジェクトで使用されるいくつかのメソッドを整理しました。必要に応じて参照できます。

はじめに

インスタンス化されたオブジェクトの前に、名前空間の元のクラスが配置されます。名前空間が使用されていない場合は、前のクラスを削除できます

1。 2. 指定された時刻を出力します

$datetime = new \DateTime;
print_r($datetime->format('Y-m-d H:i:s'));
3. 指定された時刻に応じてフォーマットします

$datetime = new \DateTime('2016-06-13');
print_r($datetime);
4. Unix

タイムスタンプ

を出力します(メソッド1が返されます)。 1990 年より前の場合は負の数、メソッド 2 は false を返します)

$datetime = \DateTime::createFromFormat('Ymd', '20160618');
print_r($datetime->format('Y-m-d'));
5. 指定されたタイムスタンプを指定された時刻にフォーマットします

//方法1(php5.2):
$datetime = new \DateTime();
echo $datetime->format('U');exit;

//方法2(php5.3)推荐
$datetime = new \DateTime();
echo $datetime->getTimestamp();exit;
6. 2 つの日付と時刻を比較し、年を比較します。年と月を比較します...

$datetime = new \DateTime();
$datetime->setTimestamp(1465783744);
echo $datetime->format('Y-m-d H:i:s');
7. 数日前の長さの DateInterval 構造体を作成します

関数のパラメーター は、時間間隔の一致を表す 文字列

です。この時間間隔の一致は文字 P で始まり、その後に整数が続き、最後に前の整数を制限する期間識別子が続きます。有効な期間識別子は次のとおりです。 Y (年) M (月) D (日) W (週) H (時) M (分) S (秒) 時間が必要な場合、間隔規則には時刻と日付の両方を含めることができます。たとえば、間隔規則 P2D は 2 日の間隔を意味し、間隔規則 P2DT5H2M は 2 日 5 時間 2 分の間隔を意味します。

$datetime1 = new \DateTime('2016-01-01 10:11:18');
$datetime2 = new \DateTime('2017-05-11 22:21:21');
$interval = $datetime1->diff($datetime2);
print_r($interval->format('%Y'));//%表示使用格式化,R表示是大于这个日期(+),还是小于这个日期(-),a表示大于或小于多少天,时分秒正常使用y,m,d,h,i,s
8. 数日前に時刻を作成します

$datetime = new \DateTime();
$interval = new \DateInterval('P2DT5H');
//或者使用createFromDateString方法
//$interval = \DateInterval::createFromDateString('1 month');
//修改DateTime实例
$datetime->add($interval);
echo $datetime->format('Y-m-d H:i:s');
9. 現在の DateTime オブジェクトを年、月、日を経てリセットします

10.現在の DateTime オブジェクトの時刻を、時、分、秒を経て別の時刻に変換します (オプションのパラメーター)

$datetime = new \DateTime();
$interval = new \DateInterval('P2DT5H');
$datetime->sub($interval);
echo $datetime->format('Y-m-d H:i:s');
//ps:有个modify方法,这个方法是减去30,并不是像前推1天,输出的还是12月
$datetime = new \DateTime('2014/12/31');
$datetime->modify( '-1 month' );
print_r($datetime);exit;

11. 時刻をフォーマットする前にタイムゾーンを変更します

$datetime = new \DateTime();
$datetime->setDate(2015, 2, 28);
echo $datetime->format('Y-m-d');exit;

12。タイムゾーン

$datetime = new \DateTime();
$datetime->setTime(20, 20, 24);
echo $datetime->format('Y-m-d H:i:s');exit;

13. 2つのタイムゾーンのオフセット値を計算します

$timezone = new \DateTimeZone('Asia/Calcutta');
$datetime = new \DateTime();
$datetime->setTimezone($timezone);
print_r($datetime->format('Y-m-d H:i:s'));exit;

14. 時間間隔を返します

$date = new \DateTime(null, new DateTimeZone('Asia/Shanghai'));
$tz = $date->getTimezone();
echo $tz->getName();

15. 最初のいくつかを繰り返して出力します。現在の日付からの日数です。 DatePeriod クラスの

コンストラクター

は 3 つのパラメーターを受け入れ、反復が開始される日時を表す DateTime インスタンス、次の日時間の間隔を表す DateInterval インスタンス、および合計を表す整数を提供する必要があります。反復回数。4 番目のパラメーターはオプションであり、反復時に開始日時を明示的に指定するために使用されます。コンストラクターの最後のパラメーターを 定数に設定できます。 : りー

以上がphp DateTimeのよくあるメソッドを詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。