PHP での文字列の 16 進ダンプの取得
PHP では、文字列は文字のシーケンスを表します。ただし、エンコードを扱う場合は、文字列を構成する生のバイトを検査する必要がある場合があります。この記事では、文字列の 16 進ダンプを取得し、そのバイナリ内容の低レベル表現を提供する 2 つの方法について説明します。
方法 1: bin2hex() を使用する
bin2hex() 関数は、バイナリ データ (バイト) を 16 進数表現に変換します。文字列の 16 進ダンプを取得するには、それを引数として bin2hex() に渡すだけです。例:
$string = "Hello World"; $hexDump = bin2hex($string); echo $hexDump;
これにより、次の 16 進表現が出力されます:
48656c6c6f20576f726c64
方法 2: 文字の反復
より詳細な制御用書式設定を変更すると、文字列内の各文字を反復処理して、その ASCII 値を 16 進数に変換できます。これは、次のコードを使用して実行できます。
$string = "Hello World"; $hexDump = ""; for ($i = 0; $i < strlen($string); $i++) { $hexDump .= str_pad(dechex(ord($string[$i])), 2, '0', STR_PAD_LEFT); } echo $hexDump;
出力は方法 1 と同じになります。
48656c6c6f20576f726c64
どちらの方法でも、データを構成するバイトの 16 進表現が提供されます。文字列。エンコードの問題のデバッグや低レベルの文字列操作の実行に役立ちます。
以上がPHPで文字列の16進ダンプを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。