addlashes é o equivalente aproximado de
str_replace($str, "'", "\\'")
. Você pode ignorá-lo trivialmente com qualquer número de sequências unicode que avaliam até '
no mysql, mas parece completamente diferente de addslashes()
. Mysql_real_escape_String()
por outro lado, usa a função de escape interna real do mysql, que sabe exatamente o que procurar e corrigir para torná-lo "seguro" para o mysql. O que funciona para o mysql pode não funcionar para outro banco de dados, pois cada um tem semântica e requisitos de escape ligeiramente diferentes, mas se você estiver trabalhando com o mysql, a "string de escape real" é o caminho a seguir.