Flow PHP

TraceId implements Stringable

Read onlyYes
FinalYes

A 16-byte (128-bit) trace identifier compatible with OpenTelemetry W3C Trace Context.

TraceIds are used to correlate spans across service boundaries. All-zero TraceIds are rejected at construction time per W3C spec.

Example usage:

$traceId = TraceId::generate();
echo $traceId->toHex(); // "0af7651916cd43dd8448eb211c80319c"

Interfaces

Stringable

Methods

__toString()  : string
equals()  : bool
Check if this TraceId equals another TraceId.
fromArray()  : self
Create a TraceId from a normalized array representation.
fromBytes()  : self
Create a TraceId from 16 raw bytes.
fromHex()  : self
Create a TraceId from a 32-character hexadecimal string.
generate()  : self
Generate a new random TraceId.
normalize()  : array{hex: string}
Normalize the TraceId to an array representation for serialization.
toBytes()  : string
Get the TraceId as 16 raw bytes.
toHex()  : string
Get the TraceId as a 32-character lowercase hexadecimal string.

Methods

__toString()

public __toString() : string
Return values
string

equals()

Check if this TraceId equals another TraceId.

public equals(self $other) : bool
Parameters
$other : self
Return values
bool

fromArray()

Create a TraceId from a normalized array representation.

public static fromArray(array{hex: string} $data) : self
Parameters
$data : array{hex: string}

Normalized TraceId data

Tags
throws
InvalidArgumentException

if the data is invalid

Return values
self

fromBytes()

Create a TraceId from 16 raw bytes.

public static fromBytes(string $bytes) : self
Parameters
$bytes : string

16 raw bytes

Tags
throws
InvalidArgumentException

if the byte string is not exactly 16 bytes or is all zeros

Return values
self

fromHex()

Create a TraceId from a 32-character hexadecimal string.

public static fromHex(string $hex) : self
Parameters
$hex : string

32-character lowercase hexadecimal string

Tags
throws
InvalidArgumentException

if the hex string is invalid or represents all zeros

Return values
self

generate()

Generate a new random TraceId.

public static generate() : self
Return values
self

normalize()

Normalize the TraceId to an array representation for serialization.

public normalize() : array{hex: string}
Return values
array{hex: string}

toBytes()

Get the TraceId as 16 raw bytes.

public toBytes() : string
Return values
string

toHex()

Get the TraceId as a 32-character lowercase hexadecimal string.

public toHex() : string
Return values
string

        
On this page

Search results