- PHP code
$str1 = "http://user.qzone.qq.com/1340477530#!app=2&pos=1300412602";$xml = '<?xml version="1.0" encoding="utf-8"?>'."\r\n";$xml .= '<user>'."\r\n";$xml .= "\t".'<person_siteurl>'.$str1.'</person_siteurl>'."\r\n";$xml .= '</user>'."\r\n";$sxe = new SimpleXMLElement($xml);$sxe->asXML('test.xml');
运行后发现如下错误,
- HTML code
arning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: Entity: line 3: parser error : EntityRef: expecting ';' in C:\wamp\www\test\a.php on line 18Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: <person_siteurl>http://user.qzone.qq.com/1340477530#!app=2\&pos=1300412602</per in C:\wamp\www\test\a.php on line 18
将$str1中的 "&" 去掉后就正常了,这是为什么啊。。有什么解决办法吗?谢谢~~
------解决方案--------------------
$xml .= "\t".'<person_siteurl>'.htmlentities($str1).'</person_siteurl>'."\r\n";