Heim > Artikel > Backend-Entwicklung > PHP-Escape-String-Sonderzeichen
Welche Methode kann PHP verwenden, um alle Sonderzeichen in einer Zeichenfolge zu maskieren?
Ähnlich wie mysql_real_escape_string, aber dieser ist veraltet und wird nicht in der Datenbank verwendet.
Welche Methode kann PHP verwenden, um alle Sonderzeichen in einer Zeichenfolge zu maskieren?
Ähnlich wie mysql_real_escape_string, aber dieser ist veraltet und wird nicht in der Datenbank verwendet.
htmlspecialchars
Die MySQL-Erweiterung wurde seit PHP 5.5 aufgegeben. Sie können stattdessen mysqli oder pdo_mysql verwenden
Also die von Ihnen erwähnte mysql_real_escape_string-Funktion: Wenn Sie mysqli verwenden, können Sie stattdessen mysqli_real_escape_string verwenden
Es wird jedoch empfohlen, pdo_mysql zu verwenden und vorbereitete Anweisungen zu verwenden, um die Sicherheit zu verbessern
http://php.net/manual/zh/ref....
htmlspecialchars
Einfache und doppelte Anführungszeichen, Größer-als- und Kleiner-als-Zeichen usw. werden in das HTML-Format konvertiert;htmlentities
Alle Zeichen werden in das HTML-Format konvertiert;addslashes
Einfache und doppelte Anführungszeichen, Backslashes und NULL werden mit Backslash ;
Wie andere Internetnutzer sagten, müssen Sie sich bei Verwendung von pdo
keine Gedanken über Injektionen und andere Probleme bei Datenbankvorgängen machen. Die integrierte Vorverarbeitung von pdo
kann die Injektion von sql
effektiv verhindern und Sonderzeichen behandeln.
Wenn Sie pdo
nicht verwenden, müssen Sie die Filterung selbst durchführen. Hier ist eine Methode, die ich nur als Referenz verwendet habe
<code>function isEscape($val, $isboor = false) { if (! get_magic_quotes_gpc ()) { $val = addslashes ( $val ); } if ($isboor) { $val = strtr ( $val, array ( "%" => "\%", "_" => "\_" ) ); } return $val; }</code>