In PHP begegnen Sie bei der Verarbeitung von binären Zeichenfolgen häufig die Notwendigkeit, einige der Bits zu extrahieren oder zu modifizieren. Die BindEc () -Funktion kann binäre Zeichenfolgen in Dezimalzahlen umwandeln, während die Substr () -Funktion uns helfen kann, einen Teil der Zeichenfolge abzufangen. Die Verwendung der beiden zusammen ermöglicht Bit-Level-Operationen auf binären Zeichenfolgen.
BindEc (String $ Binary_String): int
Konvertieren Sie eine binäre Darstellung einer Schnur in eine Dezimalbezahlung. Zum Beispiel: Binesec ('101') gibt 5 zurück.
Substr (String $ String, int $ start, int $ länge = null): String
Schneiden Sie ein Substring aus einer Schnur. Zum Beispiel: Substr ('101101', 2, 3) gibt '110' zurück.
Angenommen, es gibt eine binäre Schnur, die Sie ab Bit 3 eine 4-Bit-Binärzahl extrahieren und dann in die Dezimalheit umwandeln möchten.
<?php
$binaryString = "1101011011"; // Original -Binärzapfen
// verwenden substr Abfangen vom Index 2 Die Startlänge ist 4 Substrings von(Beachten Sie den Index von0Start)
$subBinary = substr($binaryString, 2, 4); // "0101"
// verwenden bindec Konvertieren die abgefangene binäre Schnur in Dezimal
$decimalValue = bindec($subBinary);
echo "Binärer Substring: " . $subBinary . "\n"; // Ausgabe: 0101
echo "Der entsprechende Dezimalwert: " . $decimalValue . "\n"; // Ausgabe: 5
?>
Substr ($ BinaryString, 2, 4) : Ausgehend vom dritten Zeichen der ursprünglichen Zeichenfolge (der Index von 0) beträgt die Länge 4 und erhält "0101" .
Binec ("0101") : Konvertieren "0101" in Dezimaler 5.
Zusätzlich zum Extrahieren können Sie auch ein bestimmtes Bit der binären Zeichenfolge ändern:
<?php
$binaryString = "1101011011";
// Wille5Bisschen(Der Index ist4)Wechseln zu1
$pos = 4;
$newBit = '1';
// Zeichenfolge ändern
$binaryString = substr_replace($binaryString, $newBit, $pos, 1);
echo "Modifizierte binäre Zeichenfolge: " . $binaryString . "\n";
?>
Durch Kombination von Substr () -Innenanschlägen und Bindec () -Wertverkehrungsfunktionen können binäre Zeichenfolgen auf Bit -Ebene leicht extrahiert und konvertiert werden, und andere Funktionen der String -Betrieb können sogar eine komplexere Binärdatenverarbeitung realisieren.