|
Posted by MW on 11/17/07 20:09
Hello people,
I have a PHP script parsing an XML file, and am having a problem when
the characterData read contains extended characters (such as é). The
ef_characterData function is the character data handler for the XML
parser, and when I feed it an XML file like the one below, the string
$ef['title'] only contains the string "é to the White House" - the first
few characters are lost for some reason.
If I try to echo the $data variable right at the place where the
assignment to $ef['title'] occurs, $data contains the entire string
("Attaché to the White House"). Seems like the assignment operator is
truncating the string.
I figure this is because of PHP's limitations with 256 chars, but does
anyone have a workaround?
<php code>
function ef_characterData($parser, $data) {
global $curTag, $ef;
$titleKey = "^ROOT^TITLE";
if ($curTag == $titleKey) $ef['title'] = $data;
}
</php code>
<xml file>
<Root>
<title>The local Attaché to the white house</title>
</Root>
</xml file>
Thanks in advance!
MW
[Back to original message]
|