EntityRef: expecting ';' at line

XML_Unserializer使ってたら、
EntityRef: expecting ';' at line と出た。
どうも&がいけないらしい。

$unserializer =& new XML_Unserializer();
$unserializer->setOption("parseAttributes", TRUE);

$val = ereg_replace( "&", "##amp;", $value );
$val = ereg_replace( "&", "##amp;", $val );
$val = ereg_replace( "##amp;", "&", $val );
$success = $unserializer->unserialize($val);

適当な置換しか思い浮かばなかった。