Bei der Verarbeitung von QR -Code oder Barcode -Daten begegnen wir häufig codierte hexadezimale Zeichenfolgen. Um diese codierten Informationen auf lesbare Daten wiederherzustellen, bietet PHP eine sehr praktische Funktion - hexDec () . In diesem Artikel wird erläutert, wie die Funktion hexdec () verwendet wird, um Hexcode -Informationen in QR -Codes oder Barcodes zu analysieren.
Die Hexdec () -Funktion in PHP wird verwendet, um eine Hex -Zeichenfolge in eine Dezimalzahl umzuwandeln. Dies ist sehr nützlich, um Codierungen zu analysieren, die numerische Informationen enthalten, insbesondere bei der Behandlung von zugrunde liegenden Codierungs- oder Protokolldaten.
$hex = '1A';
$decimal = hexdec($hex);
echo $decimal; // Ausgabe 26
Diese Funktion akzeptiert einen hexadezimalen String -Parameter (muss nicht mit 0x beginnen) und gibt den entsprechenden Dezimalbezahlungswert zurück.
In einigen Systemen komprimiert ein QR -Code oder ein Barcode die Informationen in eine Reihe von hexadezimalen Zeichen. Beispielsweise können einige Zahlungssysteme oder Logistik -Tags codierte Informationen wie folgt enthalten:
3031323334
Dies ist eigentlich die in hexadezimal codierte Form ASCII: 30 ist 0 , 31 ist 1 und so weiter. Daher müssen wir alle zwei Charaktere als hexadezimale Nummer analysieren und sie wieder den Charakteren übergeben.
Angenommen, Sie haben eine Reihe von Hexadezimalcodes aus dem QR -Code gescannt:
$hexString = '3435363738'; // äußern "45678"
Wir können den folgenden Code schreiben, um die ursprüngliche Zeichenfolge wiederherzustellen:
$hexString = '3435363738';
$decoded = '';
for ($i = 0; $i < strlen($hexString); $i += 2) {
$hexPair = substr($hexString, $i, 2);
$decimal = hexdec($hexPair);
$decoded .= chr($decimal);
}
echo $decoded; // Ausgabe: 45678
Dieser Prozess wandelt alle zwei Zeichen in Dezimalheit um, indem sie sie von hexadezimal zu dezimal umwandeln und dann CHR () verwenden, um sie in Zeichen wiederherzustellen. Ideal zum Wiederherstellen von Text- oder ID -Nummern, die in QR -Codes eingebettet sind.
Wenn Sie beispielsweise einen Barcode -Scanner verwenden, um Daten zu sammeln, geben Sie den folgenden Inhalt zurück:
url:68747470733a2f2f676974626f782e6e65742f646f776e6c6f61642f66696c652e706466
Das String -Zeichenpräfix ist URL:, gefolgt von einer hexadezimal codierten URL. Wir können es mit der folgenden Methode analysieren:
$encodedUrl = '68747470733a2f2f676974626f782e6e65742f646f776e6c6f61642f66696c652e706466';
$url = '';
for ($i = 0; $i < strlen($encodedUrl); $i += 2) {
$url .= chr(hexdec(substr($encodedUrl, $i, 2)));
}
echo $url;
// Ausgabe: https://gitbox.net/download/file.pdf
Auf diese Weise können Sie einfach die vollständige URL -Adresse, Produktnummer, Logistikinformationen usw. aus dem Barcode extrahieren.
Bei der Analyse von QR -Codes und Barcodes ist die hexadezimale Codierung eine gemeinsame Methode der Datenkapselung. Die Hexdec () -Funktion von PHP in Kombination mit der Funktion chr () kann diese codierten Informationen effizient auf lesbare Inhalte wiederherstellen. In den tatsächlichen Projekten ist diese Technologie eines der unverzichtbaren Tools, unabhängig davon, ob es sich um Logistikverfolgung, Zahlungssysteme oder Produktetikettenlesen handelt. Wenn Sie diese Dekodierungsmethode beherrschen, können Sie die zugrunde liegenden codierten Daten tiefer verstehen und verarbeiten.