$xml; 注意header行. 该行告知浏览器发送的是xml类型的内容. 所以浏览器能正确的处理. 很多的javascript库也依赖头信息.类似的有 javascript , css, jpg image, png image:JavaScriptheader("content-type: application/x-javascript"); echo "var a = 10"; CSSheader("content-type: text/css"); echo "#div id { background:#000; }"; 9. 为mysql连接设置正确的字符编码曾经遇到过在mysql表中设置了unicode/utf-8编码, phpadmin也能正确显示, 但当你获取内容并在页面输出的时候,会出现乱码. 这里的问题出在mysql连接的字符编码.//Attempt to connect to database $c = mysqli_connect($this->host , $this->username, $this->password); //Check connection validity if (!$c) { die ("Could not connect to the database host: <br />". mysqli_connect_error()); } //Set the character set of the connection if(!mysqli_set_charset ( $c , ''UTF8'' )) { die(''mysqli_set_charset() failed''); } 一旦连接数据库, 最好设置连接的 characterset. 你的应用如果要支持多语言, 这么做是必须的.10. 使用 htmlentities 设置正确的编码选项php5.4前, 字符的默认编码是ISO-8859-1, 不能直接输出如À â等.$value = htmlentities($this->value , ENT_QUOTES , CHARSET); php5.4以后, 默认编码为UTF-8, 这將解决很多问题. 但如果你的应用是多语言的, 仍然要留意编码问题,.11. 不要在应用中使用gzip压缩输出, 让apache处理考虑过使用 ob_gzhandler 吗? 不要那样做. 毫无意义. php只应用来编写应用. 不应操心服务器和浏览器的数据传输优化问题.使用apache的mod_gzip/mod_deflate 模块压缩内容.12. 使用json_encode输出动态javascript内容时常会用php输出动态javascript内容:$images = array( ''myself.png'' , ''friends.png'' , ''colleagues.png'' ); $js_code = ''''; foreach($images as $image) { $js_code .= "''$image'' ,"; } $js_code = ''var images = ['' . $js_code . '']; ''; echo $js_code; //Output is var images = [''myself.png'' ,''friends.png'' ,''colleagues.png'' ,]; 更聪明的做法, 使用 json_encode:$images = array( ''myself.png'' , ''friends.png'' , ''colleagues.png'' ); $js_code = ''var images = '' . json_encode($images); echo $js_code; //Output is : var images = ["myself.png","friends.png","colleagues.png"] 优雅乎?13.