【PHP8.x】setMicrosecondメソッドの使い方

setMicrosecondメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

setMicrosecondメソッドは、PHPのDateTimeImmutableクラスに属するメソッドで、日付と時刻のマイクロ秒部分を設定するために使用されます。

DateTimeImmutableは「変更できない」日付/時刻オブジェクトを表します。そのため、このメソッドを呼び出しても元のDateTimeImmutableオブジェクト自体は変更されません。代わりに、指定されたマイクロ秒が設定された新しいDateTimeImmutableオブジェクトが返されます。この特性は、元の時間情報を保護しながら、異なる時間の状態を安全に扱う上で非常に重要です。

このメソッドは、0から999999の範囲でマイクロ秒の値を整数で受け取ります。1秒は100万マイクロ秒に相当するため、この機能を使うことで、ミリ秒よりもさらに細かい時間精度で時刻を操作することが可能になります。例えば、特定のログエントリのタイムスタンプを非常に精密に調整したい場合や、マイクロ秒単位でイベントの発生時刻を記録したい場合などに活用されます。

引数には設定したいマイクロ秒の値を渡します。メソッドが正常に実行された場合は、マイクロ秒が更新された新しいDateTimeImmutableオブジェクトが返されます。もし無効な値が引数として渡された場合など、処理が失敗した際にはfalseが返されることがあります。このように、setMicrosecondメソッドは、高精度な時間管理が必要なシステム開発において、時間の詳細な設定と操作を可能にするための重要なツールです。

構文(syntax)

1<?php
2$dateTime = new DateTimeImmutable('2023-10-26 10:00:00.123456');
3$modifiedDateTime = $dateTime->setMicrosecond(789012);
4echo $modifiedDateTime->format('Y-m-d H:i:s.u');
5?>

引数(parameters)

int $microsecond

  • int $microsecond: 0から999999までの範囲で、マイクロ秒を指定する整数

戻り値(return)

static

このメソッドは、元のDateTimeImmutableオブジェクトのマイクロ秒部分が指定された値に設定された、新しいDateTimeImmutableオブジェクトを返します。