„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie konvertiere ich Strings in PHP in Binärdateien und zurück?

Wie konvertiere ich Strings in PHP in Binärdateien und zurück?

Veröffentlicht am 08.11.2024
Durchsuche:884

How to Convert Strings to Binary and Back in PHP?

Konvertieren von Binärdateien und Strings in PHP: Eine umfassende Anleitung

Bei der Arbeit mit Daten in PHP ist es oft notwendig, zwischen verschiedenen Formaten zu konvertieren. Eine häufige Konvertierung erfolgt zwischen Strings und Binärdateien. Unabhängig davon, ob es um die sichere Speicherung von Daten oder die Optimierung der Leistung geht, ist es wichtig zu verstehen, wie zwischen diesen Formaten konvertiert wird.

Problem:

Wie konvertiert man einen String in eine Binärdatei und wandelt ihn dann wieder in einen String um? in der Standard-PHP-Bibliothek? Dies ist ein allgemeiner Bedarf an sicherer Datenspeicherung und -manipulation.

Lösung:

Im Gegensatz zu einigen Programmiersprachen verfügt PHP nicht über eine integrierte Funktion, um einen String direkt in eine Binärdatei umzuwandeln. Allerdings kann eine Kombination der Funktionen pack() und base_convert() diese Funktionalität erreichen.

Binär in String:

Um einen binären String zurück in seinen ursprünglichen String zu konvertieren, können wir pack verwenden () und base_convert(). Die Funktion pack() nimmt eine Formatzeichenfolge und eine Zeichenfolge mit Binärdaten und kombiniert diese, um eine Zeichenfolge zu erstellen. In unserem Fall ist die Formatzeichenfolge „H*“, was auf eine hexadezimale Zeichenfolge hinweist. Die Funktion base_convert() konvertiert einen String von einer Basis in eine andere. In diesem Fall konvertieren wir die hexadezimale Zeichenfolge in den ASCII-Zeichensatz:

// Convert binary into a string
$string = pack('H*', base_convert('0101001101110100011000010110001101101011', 2, 16));

String in Binär:

Um einen String in Binär umzuwandeln, können wir unpack( ) und base_convert(). Die Funktion unpack() nimmt einen Formatstring und einen String und extrahiert Daten aus dem String entsprechend dem angegebenen Format. In unserem Fall geben wir das Format „H*“ an, um hexadezimale Daten zu extrahieren. Die Funktion base_convert() konvertiert einen String von einer Basis in eine andere. Hier konvertieren wir die ASCII-Zeichenfolge in eine hexadezimale Zeichenfolge, die die binäre Darstellung darstellt:

// Convert a string into binary
$binary = unpack('H*', 'Stack');
echo base_convert($binary[1], 16, 2);

Beispiel:

Lassen Sie uns alles mit einem Beispiel zusammenfassen:

// Convert "Stack" to binary
$binary = unpack('H*', 'Stack');
$binaryString = base_convert($binary[1], 16, 2);
echo "Binary: $binaryString\n";

// Convert binary back to "Stack"
$asciiString = pack('H*', base_convert($binaryString, 2, 16));
echo "String: $asciiString\n";

Ausgabe:

Binary: 0101001101110100011000010110001101101011
String: Stack

Durch die Verwendung dieser Funktionen können wir in PHP effektiv zwischen Strings und Binärdateien konvertieren. Dieses Wissen ist für die Datenverschlüsselung, Dateimanipulation und verschiedene andere Aufgaben von unschätzbarem Wert.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3