In dem folgenden Tutorial möchte ich erklären, wie Sie mithilfe der Funktion chr() den ASCII-Wert eines Zeichens ermitteln kann. Außerdem werde ich erklären, was ein ASCII-Zeichen genau ist und wozu Sie solch eine Funktion überhaupt gebrauchen kann. Des Weiteren werde ich noch ein Beispiel mit einer Erklärung beigeben.
Was genau ist eigentlich ASCII?
Ausgeschrieben heißt ASCII „American Standard Code for Information Interchange“. Es ist eine 7-Bit-Zeichenkodierung und ist Grundlage für vielbittige Zeichensätze und –kodierungen.
Erstmal wurde diese Kodierung 1967 veröffentlicht und wurde im Jahr 1986 zum letzten Mal auf den neusten Stand gebracht. Die ASCII-Kodierung definiert 128 Zeichen.
Der Syntax:
chr("ASCII-Wert")
Beschreibung:
Wenn wir mit ASCII-Werten arbeiten, ist es mühsam jedes Mal in einer Tabelle nachsehen zu müssen, welcher Wert welchem Zeichen entspricht. Daher können Sie mit der Funktion chr() ein ASCII-Wert in sein dazugehöriges Zeichen umwandeln, ohne lange nach ihm zu suchen.
Beispiel:
In unserem Beispiel werden wir für einen Benutzer eine reine HTML-Seite anlegen, wo der Benutzer seinen ASCII-Wert eingeben kann und danach das dazugehörige Zeichen bekommt.
Daher benötigen wir eine Textbox, Absende-Button und unser kleines Script, das alles umwandeln wird. In unserem Beispiel-Script, geben wir als Wert „128“ ein, daher müssten wir als Zeichen „¶“ zurückbekommen.
Code für Index.html
<!-- Hier geben wir an, an welche Seite
unsere Variable übergeben wird
und mit welche Methode -->
<form method="post" action="umwandeln.php"><br />
Schreiben Sie hier ihren ASCII-Code rein:<br>
<br />
<!-- Hier befindet sich das Feld
zum eingeben des ASCII-Wertes.-->
<input type="Text" name="wert" />
<br><br />
<!-- Der Button um unser
Formular abzuschicken -->
<input value="abschicken" type="Submit" name="" /><br />
</form>
Code für umwandeln.php
<?php
/*
Prüfen ob $_POST["wert"] übergeben
wurde mit isset()
*/
if (!isset($_POST["wert"])) {
/*
Wenn kein Wert übergeben
wurde, wir NULL festgelegt.
*/
$_POST["wert"] = '0';
} else {
/*
Wenn ein Wert übegeben wurde, wandeln wir
mit sprintf() den Sting zu einer Zahl um.
*/
$_POST["wert"] = sprintf("%d", $_POST["wert"]);
}
/*
Hier übergeben wir die Variable,
die der Benutzer als ASCII-Wert
angeben hat. Zur Übergabe benutzen
wir die POST-Methode $_POST["wert"]
Hier geben wir den ASCII-Wert aus,
den der Benutzer angeben hat.
*/
echo "Ihr ASCII-Wert war: ".$_POST["wert"];
/*
Hier benutzen wir die chr() Funktion
um das Zeichen des ASCII-Wert
auszugeben und dem Benutzer
das Zeichen aufzuzeigen.
*/
echo "Das Zeichen lautet: ".chr($_POST["wert"]);
?>
Der PHP-Code führt folgende Schritte aus:
-
Überprüfung der Übergabe von $_POST["wert"]
: Mit der isset()
Funktion wird geprüft, ob die Variable $_POST["wert"]
gesetzt ist. Dies ist nötig, um zu verhindern, dass auf eine nicht existierende Variable zugegriffen wird, was zu einem Fehler führen könnte.
-
Festlegung eines Standardwerts: Falls $_POST["wert"]
nicht gesetzt ist (d.h., der Benutzer hat keinen Wert über ein Formular gesendet), wird der Variable ein Standardwert von '0'
zugewiesen. Dies verhindert Fehler bei der Weiterverarbeitung.
-
Umwandlung in eine Ganzzahl: Wenn $_POST["wert"]
gesetzt ist, wird der Wert mithilfe der sprintf()
Funktion in eine Ganzzahl (%d
) umgewandelt. Dies dient dazu, sicherzustellen, dass mit dem Wert als Zahl und nicht als String gearbeitet wird, unabhängig davon, in welchem Format der Benutzer den Wert eingegeben hat.
-
Ausgabe des ASCII-Werts: Der umgewandelte Wert wird dem Benutzer zurückgegeben, indem er direkt ausgegeben wird (echo "Ihr ASCII-Wert war: ".$_POST["wert"];
). Diese Ausgabe informiert den Benutzer darüber, welcher Wert (nun als Ganzzahl) von ihm eingegeben wurde.
-
Umrechnung und Ausgabe des Zeichens: Mit der Funktion chr()
wird der ASCII-Wert in das entsprechende Zeichen umgewandelt. Diese Umwandlung ermöglicht es, das Zeichen zu identifizieren, das dem eingegebenen ASCII-Wert entspricht. Das resultierende Zeichen wird dann ausgegeben (echo "Das Zeichen lautet: ".chr($_POST["wert"]);
), was dem Benutzer zeigt, welches Zeichen dem von ihm angegebenen ASCII-Wert entspricht.
Zusammengefasst nimmt der Code einen Wert über die POST-Methode entgegen, stellt sicher, dass dieser Wert als Ganzzahl behandelt wird, gibt den ASCII-Wert zurück und zeigt das entsprechende Zeichen an.
Hier finden Sie eine Demo des ASCII Code Generator.