手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆

simplexml简单测试

首页 > PHP >

simplexml函数是PHP5推出的一个新的类库,可以让你很方便的操作XML,对大多数人而言,最常用的应该是simplexml_load_file和simple_load_string两种了。

但是在使用中总会有一点问题,于是做了简单的一些测试。

建立了四个文件,两个GBK,两个UTF8,

两个GBK的文件内容分别如下:

XML/HTML代码
  1. <?xml version="1.0" encoding="gbk" ?>  
  2. <test>  
  3.     <test1>this is a test中文</test1>  
  4. </test>  

XML/HTML代码
  1. <?xml version="1.0" encoding="utf-8" ?>  
  2. <test>  
  3.     <test1>this is a test中文</test1>  
  4. </test>  
正如你们想的那样,UTF8的文件也是这些内容。

然后开始使用 simplexml_load_file进行测试:

PHP代码
  1. <?php  
  2. $xmlFile = '1.txt';  
  3.   
  4. $xml = @simplexml_load_file( $xmlFile );  
  5. if ( $xml === false ){  
  6.     echo'failed' );  
  7. }else{  
  8.     echo '<pre>';  
  9.     print_r( $xml );  
  10.     echo '</pre>';  
  11. }  
  12.   
  13. ?>  
然后,你会发现什么?

1、如果xml的encoding与文件类型不符,立刻报错
2、simplexml可以处理gbk的XML,即文件内容和encoding都为gbk(ANSI格式)
3、不管文件内容是什么,处理完了,都是UTF8.

over,测试完毕


其实想这个测试还有另外一个原因,因为thinkPHP的模版引擎的自定义扩展是采用XML来实现的,以前很多朋友在扩展的时候都会报错,那时候,我们的提示是:请使用 UTF8格式创建XML,现在,我们又可以提示:随便你想怎么创建,只要您的文件格式和encoding一致就行。

 




本站采用创作共享版权协议, 要求署名、非商业和保持一致. 本站欢迎任何非商业应用的转载, 但须注明出自"膘叔", 保留原始链接, 此外还必须标注原文标题和链接.

Tags: simplexml, test, utf-8, gbk

« 上一篇 | 下一篇 »

只显示10条记录相关文章

PHP里simplexml_load_string函数一个容易犯晕的地方 (浏览: 33919, 评论: 1)
解决phpstorm 3.0 乱码问题 (浏览: 23258, 评论: 0)
php simplexmlElement 操作xml的命名空间 (浏览: 20312, 评论: 1)
MYSQL汉字乱码的解决方案 (浏览: 18697, 评论: 0)
simplexml xpath (浏览: 14940, 评论: 0)

发表评论

评论内容 (必填):