Good to Know Database

Hexadezimalen String als ASCII-String ausgeben


Durch den folgenden PHP-Code wird der hexadezimale String aus der Variable $hex in einen lesbaren ASCII-String konvertiert. Dazu wird der hexadezimale String mit preg_replace() in die einzelnen Bytes zerlegt, welche dann durch chr() in ASCII umgewandelt werden. Der ASCII-String wird in der Variable $ascii gespeichert und anschließend ausgegeben.

<?php
  $hex = "44696573206973742065696E2054657374";
  $ascii = preg_replace("/([0-9A-Fa-f]{2})/e", "chr(0x\\1)", $hex);
  echo $ascii;
?>

Das Ganze kann man wie im folgenden Beispiel auch in einer Funktion unterbringen. In dieser Funktion werden zusätzlich die im hexadezimalen String vorhandenen Leerzeichen und wenn vorhanden auch der Präfix 0x entfernt.

<?php
  function hex2ascii($hex)
  {
    $hex = str_replace(" ", "", $hex);
    $hex = str_replace("0x", "", $hex);
    $ascii = preg_replace("/([0-9a-fA-F]{2})/e", "chr(0x\\1)", $hex);
    return $ascii;
  }

  echo hex2ascii("0x44 69 65 73 20 69 73 74 20 65 69 6E 20 54 65 73 74");
?>

Einen einfachen HEX2ASCII-Konverter finden Sie unter www.gtkdb.de/skripte/hex2ascii.php.


Dieser Eintrag wurde am 18.11.2012 erstellt und zuletzt am 24.01.2016 bearbeitet.

Direkter Link zu dieser Seite: http://www.gtkdb.de/index_4_1979.html

[ Zur Startseite ]   [ Zur Kategorie ]


Valid XHTML 1.0 Transitional Valid CSS Valid Atom 1.0

© 2004-2018 by Georg Kainzbauer