& i XML startar en entitet. Eftersom du inte har definierat en entitet &WhateverIsAfterThat ett fel slängs. Du bör undkomma det med & .
$string = str_replace('&', '&', $string);
Hur undkommer jag et-tecken i XML
För att undkomma de andra reserverade tecknen:
function xmlEscape($string) {
return str_replace(array('&', '<', '>', '\'', '"'), array('&', '<', '>', ''', '"'), $string);
}