PHP では、非常に一般的なタスクの 1 つは、バイト配列を文字列に変換することです。この時点で、開発者は通常次のような疑問に直面します:
バイト配列を文字列に変換するにはどうすればよいですか?
文字列をバイト配列に変換するにはどうすればよいですか?
この記事では、これら 2 つの問題について説明し、PHP でこれらの操作を実行するためのベスト プラクティスを提供します。
バイト配列を文字列に変換する
PHP では、次のメソッドを使用してバイト配列を文字列に変換できます。
$byteArray = array(72, 101, 108, 108, 111); $string = implode(array_map("chr", $byteArray));
この例では、まずバイト配列を含む次に、array_map を使用して配列内の各バイトを ASCII 文字にマップし、最後に implode を使用して文字を文字列に結合します。
バイナリ データ (ファイルまたはデータベースから取得したものなど) を文字列に変換する場合、結果の文字列が正しい長さになるようにパディング操作を実行する必要がある場合があります。たとえば、バイナリ データに NULL 文字が含まれている場合は、指定された長さにするために、その後にパディング バイトを追加する必要がある場合があります。
文字列をバイト配列に変換する
PHP では、次のメソッドを使用して文字列をバイト配列に変換できます。
$string = "Hello"; $bytes = array_map("ord", str_split($string));
この例では、最初に Created文字列を取得し、それを文字の配列に分割します。次に、array_map を使用して、配列内の各文字を対応する ASCII コード値に変換し、これらの値を新しい配列に格納します。
変換された文字列にマルチバイト文字が含まれている場合、バイト配列に正しく変換するには、マルチバイト関数 (mb_substr など) を使用して文字列をシングルバイト文字に分割する必要がある場合があります。さらに、ワイド文字をバイト配列で表現したい場合は、各文字を表すために複数のバイトを使用する必要があります。
結論
バイト配列から文字列への変換、または文字列からバイト配列への変換は、PHP の一般的なタスクの 1 つです。これらのタスクでは、上記のベスト プラクティスとヒントを使用できます。これらの操作を実行するときは、データのエンコード方法と長さに注意する必要があることに注意してください。
以上がPHPはバイト配列を変換しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。