我要崩溃了,很简单的例子,怎么就输不出正确答案呢
----------------------------------
<?php
$xml_str = "<?xml version='1.0' encoding='UTF-8'?>";
$xml_str .= "<EMAILDOCUMENT>";
$xml_str .= "<TITLE>最近在学什么</TITLE>";
$xml_str .= "<FROM>小强</FROM>";
$xml_str .= "<TO>大强</TO>";
$xml_str .= "<BODY>";
$xml_str .= "我最近在学PHP,你呢?";
$xml_str .= "</BODY>";
$xml_str .= "</EMAILDOCUMENT>";$xml = simplexml_load_string($xml_str);
var_dump($xml);
?>
--------------------------------------------
报错
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 1: parser error : Input is not proper UTF-8, indicate encoding ! Bytes: 0xD7 0xEE 0xBD 0xFC in E:\PHP\LinJiChu_PHP\chapter17\17-4.php on line 12Warning: simplexml_load_string() [function.simplexml-load-string]: <?xml version='1.0' encoding='UTF-8'?><EMAILDOCUMENT><TITLE>最近在学什么</TITLE> in E:\PHP\LinJiChu_PHP\chapter17\17-4.php on line 12Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in E:\PHP\LinJiChu_PHP\chapter17\17-4.php on line 12
bool(false)
----------------------------------
<?php
$xml_str = "<?xml version='1.0' encoding='UTF-8'?>";
$xml_str .= "<EMAILDOCUMENT>";
$xml_str .= "<TITLE>最近在学什么</TITLE>";
$xml_str .= "<FROM>小强</FROM>";
$xml_str .= "<TO>大强</TO>";
$xml_str .= "<BODY>";
$xml_str .= "我最近在学PHP,你呢?";
$xml_str .= "</BODY>";
$xml_str .= "</EMAILDOCUMENT>";$xml = simplexml_load_string($xml_str);
var_dump($xml);
?>
--------------------------------------------
报错
Warning: simplexml_load_string() [function.simplexml-load-string]: Entity: line 1: parser error : Input is not proper UTF-8, indicate encoding ! Bytes: 0xD7 0xEE 0xBD 0xFC in E:\PHP\LinJiChu_PHP\chapter17\17-4.php on line 12Warning: simplexml_load_string() [function.simplexml-load-string]: <?xml version='1.0' encoding='UTF-8'?><EMAILDOCUMENT><TITLE>最近在学什么</TITLE> in E:\PHP\LinJiChu_PHP\chapter17\17-4.php on line 12Warning: simplexml_load_string() [function.simplexml-load-string]: ^ in E:\PHP\LinJiChu_PHP\chapter17\17-4.php on line 12
bool(false)
把$xml_str = " <?xml version='1.0' encoding='UTF-8'?>";
<?xml 前面的空格去掉。
$xml_str .= " <EMAILDOCUMENT>";
$xml_str .= " <TITLE>最近在学什么 </TITLE>";
$xml_str .= " <FROM>小强 </FROM>";
$xml_str .= " <TO>大强 </TO>";
$xml_str .= " <BODY>";
$xml_str .= "我最近在学PHP,你呢?";
$xml_str .= " </BODY>";
$xml_str .= " </EMAILDOCUMENT>"; $xml = simplexml_load_string($xml_str);
var_dump($xml);
这样就对了
或者用iconv将$xml_str转成UTF-8