A resposta monkeymatrix está incorreta para versões recentes do PHP (eu testei em 7.3).
mysqli_real_escape_string()
apenas escapa certos caracteres. Aqui está uma função que irá reverter isso:function reverse_mysqli_real_escape_string($str) {
return strtr($str, [
'\0' => "\x00",
'\n' => "\n",
'\r' => "\r",
'\\\\' => "\\",
"\'" => "'",
'\"' => '"',
'\Z' => "\x1a"
]);
}
Em um aplicativo escrito corretamente, raramente deve haver a necessidade dessa função. Você deve usar o PDO com ligação de parâmetro para lidar com qualquer escape automaticamente. Eu só criei essa função para lidar com algum código legado que estava escapando de tudo na entrada e eu precisava de uma maneira de voltar aos dados originais.