Was Sie zitieren, stammt wahrscheinlich aus dem Dokument, aber soweit ich weiß, ist es nicht unbedingt wahr.
addslashes
fügt häufig störenden Zeichen Schrägstriche hinzu. mysql_real_escape_string
maskiert alles, was MySQL maskiert werden muss. Dies können mehr oder weniger Zeichen sein als die addslashes
kümmert sich um.
Außerdem mysql_real_escape_string
fügt nicht unbedingt Schrägstriche hinzu, um zu entkommen. Obwohl ich denke, dass es funktioniert, wenn Sie es so machen, entkommen neuere Versionen von MySQL Anführungszeichen, indem Sie zwei davon zusammenfügen, anstatt einen Schrägstrich davor zu setzen.
Ich glaube, Sie sollten immer die Escape-Funktion Ihres Datenanbieters anstelle von addslashes
verwenden , weil addslashes
kann entweder zu viel oder zu wenig Arbeit für den Zweck leisten, für den Sie es verwenden. Andererseits mysql_real_escape_string
weiß was zu tun ist, um eine Zeichenfolge für die Einbettung in eine Abfrage vorzubereiten. Selbst wenn sich die Spezifikationen zum Escape-Verhalten ändern und Sie plötzlich keine Backslashes mehr verwenden sollten, wird Ihr Code immer noch funktionieren, weil mysql_real_escape_string
wird sich dessen bewusst sein.