PHP では、pack() 関数を使用して、文字列を指定された形式のバイナリ バイト ストリームに変換できます。文字列をバイナリ データに変換する必要がある場合は、文字列を Pack() 関数に渡して形式を指定する必要があり、最終的に返されるのはバイト配列です。
次は、文字列をバイト配列に変換できるサンプル プログラムです。
<?php $string = "Hello World"; // 要转换的字符串 $byteArray = unpack('C*', $string); // 将字符串转换成byte数组 print_r($byteArray); // 打印byte数组 ?>
上の例では、unpack() 関数を使用して文字列をバイト配列に変換しています。ここで、最初のパラメータは指定する形式です。C は、データを符号なし文字で解析することを意味します。 2 番目のパラメーターは変換する文字列です。* を使用すると、任意の長さの文字列を処理できることを意味します。
さらに、以下に示すように、pack() 関数を使用してバイト配列を文字列に変換できます。
<?php $byteArray = array(72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100); // byte数组 $string = call_user_func_array('pack', array_merge(array('C*'), $byteArray)); // 将byte数组转换成字符串 echo $string; // 打印字符串 ?>
上の例では、最初にバイト配列が定義され、次にバイト配列が定義されます。 call_user_func_array( ) 関数は、バイト配列を文字列に変換します。最初のパラメーターは、指定する形式です。C は、データを符号なし文字の形式で解析することを意味します。2 番目のパラメーターは、変換されるバイト配列です。
最後に、echo ステートメントを使用して、変換された文字列を出力できます。
つまり、PHP では、pack() 関数を通じて文字列をバイト配列に変換し、unpack() 関数を通じてバイト配列を文字列に変換して、バイナリ データの処理を容易にすることができます。
以上がPHPで文字列をバイト配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。