Hola,
¿De donde sacas el valor de $html? Porque dependiendo de la configuracion de PHP, si la lees de un formulario (o de una BD), el automaticamente escapa la cadena (añade \ delante de ciertos caracteres). La directivas de php.ini que controlan esto son magic_quotes_gpc y magic_quotes_runtime (ver
http://es2.php.net/manual/en/ref.inf...gic-quotes-gpc). Para ver el valor que tienen durante la ejecucion de un script debes usar get_magic_quotes_gpc() (
www.php.net/get-magic-quotes-gpc) y get_magic_quotes_runtime() (
www.php.net/get-magic-quotes-runtime) respectivamente.
Para grabar el HTML sin los caracteres de escape '\' añadidos, debes usar stripslashes() (
www.php.net/stripslashes), pero solo cuando las directivas esten activadas y se hayan añadido los \. Si no, eliminarias los \ que existian en los datos originales.
Espero haber sido de ayuda.