Steuerzeichen - Formatierung von auszugebenden Texten in JavaScript oder PHP
![[Bildschirmfoto]
Steuerzeichen in einem Editor [Bildschirmfoto]
Steuerzeichen in einem Editor](img/escape-zeichen.png)
Bevor längere Texte an ihre Ziele geschickt werden, können diese mit Steuerzeichen für Formatierung, Umbruch, Tabulator etc. versehen werden. Welche Möglichkeiten es gibt, zeigt die folgende Liste. Die Steuerzeichen werden einfach in den Text eingefügt.
Es werden bei JavaScript oder PHP nicht alle Steuerzeichen unterstützt, nur der Zeilenvorschub, Wagenrücklauf und der horizontale Tabulator.
\a Piepston \b Backspace \e Escape-Zeichen \f Seitenvorschub (Formfeed, FF) \n Zeilenvorschub (Neue Zeile, Linefeed, LF) \r Wagenrücklauf (Carriage Return, CR) \t Horizontaler Tabulator \v Vertikaler Tabulator
Das Steuerzeichen \t
(Horizontaler Tabulator) wird von Chromium-Browser (Google Chrome,
Microsoft Edge, etc.) nicht unterstützt.
JavaScript
Beispiele für \n (Zeilenumbruch) :
<input type="button" value="Klick" onClick="alert( 'Herzlich \n Willkommen' ); ">
<input type="button" value="Klick 2"
onClick="confirm('\tTermin wirklich löschen?\nDie Daten sind dann verloren.');">
Ausgabe in einem Textbereich (Textarea)
<textarea id="textbereich"></textarea>
<script>
document.getElementById("textbereich").value = "Herzlich \n Willkommen";
</script>
Im folgenden Beispiel wird die Zeichenkette durch Backticks (oder Backquote, deutsch für: rückwärts geneigtes Hochkomma)
`Text`
begrenzt,
dadurch lässt sich innerhalb ein Zeilenumbruch (mit der Tastatur) einfügen.
<script> document.getElementById("textbereich").value = `Herzlich Willkommen`; </script>
Backticks erzeugt man mit der Umschalt + Apostroph-Taste.
PHP
In PHP werden die Steuerzeichen
nur ausgeführt, wenn sich das Steuerzeichen innerhalb von doppelten Anführungszeichen befindet.
echo "\tHallo \nWelt!";
Der Tabulator und der Zeilenvorschub werden dann im Quelltext des Browsers angezeigt.
Doppelte Anführungszeichen innerhalb einer Zeichenkette
echo "\"Hallo Welt!\"";
echo '"Hallo Welt!"'; // Alternativ
Variablen innerhalb einer Zeichenkette
echo "blabla \$text blabla";
Gibt diesen Text aus: blabla $text blabla
Zeilenumbruch bei der Ausgabe hinzufügen
<?php
echo "Hallo Welt!\n";
echo 'Hallo Welt!' . "\n";
echo 'Hallo Welt!' . chr(13);
echo 'Hallo Welt!' . PHP_EOL;
?>
Whitespaces
bei der Ausgabe entfernen
Die PHP-Funktion trim()
entfernt Leerzeichen, Tabulatoren und Zeilenumbrüche am Anfang und Ende einer Zeichenkette.
<?php
$string = "\n\t Hallo Welt! \r";
var_dump($string);
$newstring = trim($string);
var_dump($newstring);
// string(16) " Hallo Welt! "
// string(11) "Hallo Welt!"
?>
Einfache oder doppelte Anführungszeichen verwenden?
In PHP sollte man die einfachen Anfürungszeichen bei der Ausgabe von Zeichenketten verwenden (Zeile 5 ) und die doppelten HTML und JavaScript überlassen. Das hat den Vorteil, dass Anfürungszeichen innerhalb einer Zeichenkette nicht maskiert werden müssen, Eingabefehler werden damit vermieden.Besonders beim Kontextwechsel (HTML-Attribute, mit PHP erzeugter JavaScript- oder CSS-Code) ist es wichtig die Anführungszeichen richtig zu maskieren.
1
2
3
4
5
6
7
8
9
10
<?php
$vorname = 'Reiner';
$nachname = "Zufall";
echo '<input type="text" name="Name" value="' . $vorname . ' ' . $nachname . '" style="width: 200px;">';
echo "<input type=\"text\" name=\"Name\" value=\"$vorname $nachname\" style=\"width: 200px;\">";
echo '<input type="button" value="Meldung" onclick="alert(\'Hallo Welt!\');">';
?>
Geschützte Zeichen werden mit einem Rückstrich (\) vorangestellt geschrieben.
\' einfaches Anführungszeichen innerhalb einer Zeichenkette (String) \" doppeltes Anführungszeichen innerhalb einer Zeichenkette \\ Rückstrich (Backslash) innerhalb einer Zeichenkette \$ Geschütztes Zeichen in PHP \/ Geschütztes Zeichen in JavaScript