Heim  >  Artikel  >  Backend-Entwicklung  >  So konvertieren Sie einen String in ein Byte-Array in PHP

So konvertieren Sie einen String in ein Byte-Array in PHP

PHPz
PHPzOriginal
2023-04-20 13:53:461079Durchsuche

In PHP können wir mehrere Methoden verwenden, um einen String in ein Byte-Array zu konvertieren. In diesem Artikel konzentrieren wir uns auf die beiden gängigsten Methoden.

Methode 1: Funktion str_split verwenden

str_split(string$string, int$split_length = 1): Teilen Sie die Zeichenfolge in Teilzeichenfolgen auf, fügen Sie sie in ein Array ein und geben Sie das Array zurück. Die Länge jeder Zeichenfolge entspricht der durch den Parameter „split_length“ angegebenen Länge. Wenn split_length nicht angegeben ist, ist der Standardwert 1.

Hier ist der Beispielcode zum Konvertieren einer Zeichenfolge in ein Byte-Array:

$str = "Hello World!";
$bytes = str_split($str);

foreach($bytes as $byte) {
    echo ord($byte) . " ";
}

In diesem Beispielcode haben wir die Funktion ord verwendet, um jedes Zeichen in ASCII-Code zu konvertieren, und eine foreach-Schleife verwendet, um das Byte-Array auf der Bühne der Steuerung auszugeben. Die Ausgabe lautet:

72 101 108 108 111 32 87 111 114 108 100 33

Methode Zwei: Verwenden Sie die Entpackfunktion

Diese Methode erfordert die Verwendung der Packfunktion, um die Zeichenfolge in Binärdaten zu packen. Darüber hinaus müssen Sie bei Verwendung der Entpackfunktion den gepackten Datentyp angeben und den Rückgabewert in ein Byte-Array konvertieren.

Hier ist der Beispielcode:

$str = "Hello World!";
$bytes = unpack('C*', pack('H*', bin2hex($str)));

foreach($bytes as $byte) {
    echo $byte . " ";
}

In diesem Beispielcode haben wir bin2hex verwendet, um die Zeichenfolge in eine hexadezimale Zeichenfolge umzuwandeln, und sie dann mit pack in Binärdaten gepackt. Bei der Verwendung von unpack entpacken wir die Daten mit gemeinsam genutzten Symbolen vom Typ C und drucken das Byte-Array mithilfe einer foreach-Schleife.

Die Ausgabe lautet:

72 101 108 108 111 32 87 111 114 108 100 33

Zusammenfassend sind dies zwei Möglichkeiten, einen String in ein Byte-Array in PHP umzuwandeln. Für Entwickler, die verschiedene Verschlüsselungs-/Entschlüsselungsvorgänge durchführen müssen, ist es von entscheidender Bedeutung, die Funktionsweise dieser Methoden zu verstehen.

Das obige ist der detaillierte Inhalt vonSo konvertieren Sie einen String in ein Byte-Array in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn