To, co cytujesz, prawdopodobnie pochodzi z dokumentu, ale o ile wiem, niekoniecznie jest to prawdą.
addslashes
dodaje ukośniki do postaci, które są często niepokojące. mysql_real_escape_string
ucieka cokolwiek MySQL potrzebuje. Może to być mniej lub więcej znaków niż addslashes
się tym zajmuje.
Również mysql_real_escape_string
niekoniecznie doda ukośniki do ucieczki. Chociaż myślę, że to działa, jeśli zrobisz to w ten sposób, ostatnie wersje cudzysłowów MySQL poprzez połączenie dwóch z nich zamiast umieszczania przed nimi ukośnika.
Uważam, że zawsze powinieneś używać funkcji escape swojego dostawcy danych zamiast addslashes
, ponieważ addslashes
może wykonać zbyt dużo lub za mało pracy w celu, w jakim go używasz. Z drugiej strony mysql_real_escape_string
wie co zrobić, aby przygotować ciąg do osadzenia go w zapytaniu. Nawet jeśli specyfikacje zmienią się o tym, jak uciec od rzeczy i nagle nie będzie już więcej ukośników odwrotnych, których powinieneś używać, twój kod nadal będzie działał, ponieważ mysql_real_escape_string
będzie tego świadomy.