O que você cita provavelmente é do documento, mas até onde eu sei não é necessariamente verdade.
addslashes
adiciona barras a caracteres que são comumente perturbadores. mysql_real_escape_string
escapa o que quer que o MySQL precise ser escapado. Isso pode ter mais ou menos caracteres do que addslashes
cuida. Além disso,
mysql_real_escape_string
não necessariamente adicionará barras para escapar. Embora eu ache que funciona se você fizer dessa maneira, as versões recentes do MySQL escapam das citações colocando duas delas juntas em vez de colocar uma barra antes. Acredito que você sempre deve usar a função de escape do seu provedor de dados em vez de
addslashes
, porque addslashes
pode fazer muito ou pouco trabalho para o propósito que você o usa. Por outro lado, mysql_real_escape_string
sabe o que fazer para preparar uma string para incorporá-la em uma consulta. Mesmo que as especificações mudem sobre como escapar de coisas e de repente não são mais as barras invertidas que você deve usar, seu código ainda funcionará porque mysql_real_escape_string
estará ciente disso.