&
v XML spouští entitu. Protože jste nedefinovali entitu &WhateverIsAfterThat
je vyvolána chyba. Měli byste jej ukončit pomocí &
.
$string = str_replace('&', '&', $string);
Chcete-li uniknout ostatním vyhrazeným znakům:
function xmlEscape($string) {
return str_replace(array('&', '<', '>', '\'', '"'), array('&', '<', '>', ''', '"'), $string);
}