我通过webservice获得到返回的XML,有时候无法直接在页面输出,显示的是:
无法显示 XML 页。 
使用 XSL 样式表无法查看 XML 输入。请更正错误然后单

 是在用 SimpleXMLElement 时,也返回以下错误:Fatal error: Uncaught exception 'Exception' with message 'String could not be parsed as XML' 
也就是说这个XML有错误的。 在用 SimpleXMLElement 时,也只是被当做String
请问,我怎么去解析这个是String 的 XML。 或者说怎么 先去判断下是否是合法XML,如果不是合法XML,就将这个String转变成XML。  怎么转

解决方案 »

  1.   

    先更正XML文件中错误再说!!!!
      

  2.   

    通常 webservice 是不会返回错误的 xml 的,除非对方出现了问题
    如果真是 webservice 返回了错误的 xml,你也只有等待他修复了SimpleXMLElement 只接受 utf-8 编码的 xml 文档
      

  3.   

    是不是输出头里面默认使用的是text/html
      

  4.   


    问题已经说的很明白了。
    XML不是我能控制的。 人家发送过来的有时错误 有时正确,有时是XML,有时实际却是一个字符串。或者说怎么 先去判断下是否是合法XML,如果不是合法XML,就将这个String转变成XML。 怎么转
      

  5.   


    谢谢你理解了我的题意。怎么 先去判断下是否是合法XML,如果不是合法XML,就将这个String转变成XML。 怎么转
      

  6.   

    看看编码
    如果返回的头信息看看是不是utf8?看看你的PHP文件的编码是不是utf8?
      

  7.   


    SimpleXMLElement 只接受 utf-8 编码的 xml 文档