Welche Zeichen können Probleme verursachen, wenn sie nicht vor der Bearbeitung ersetzt werden?

Wenn bestimmte Zeichen wie "<" oder ">" nicht vor der Bearbeitung ersetzt werden, können sie als HTML-Tags interpretiert werden und unerwünschte Effekte wie Cross-Site-Scripting verursachen. Um dieses Problem zu lösen, sollten solche Zeichen durch ihre HTML-Entitäten ersetzt werden, z.B. "<" durch "&lt;" und ">" durch "&gt;".

$string = &quot;&lt;script&gt;alert(&#039;Hello, world!&#039;);&lt;/script&gt;&quot;;
$escaped_string = htmlspecialchars($string, ENT_QUOTES, &#039;UTF-8&#039;);
echo $escaped_string;