👌

【PHP】ByteIterator を実装する

2024/07/25に公開

息抜きに書いてみた。今後 HTTP/2 フレームのデバッグログの表示に使う機会があるかもしれない

$str = "あいうえお";
$iter = ByteIterator($str);

foreach ($iter as $value) {
    echo strtoupper(bin2hex($value)), ' ';
}

echo PHP_EOL;

function ByteIterator(string $str): Generator {
    $length = strlen($str);

    for ($i = 0; $i < $length; ++$i) {
        yield $str[$i];
    }

}

Discussion