2011-08-19 40 views
1

我正在编写一个PHP rest服务。我从客户端发送xml字符串,服务使用SimpleXmlElement解析xml。如果我发送“hello world”而不是xml字符串,则下面的一段代码会在浏览器中产生警告。我怎么才能检查输入是有效的xml字符串不是一些句子。在PHP中进行xml字符串验证

try 
{ 
    xmlobj = new SimpleXMLElement($xml_post); 
} 
catch(Exception $e) 
{ 
    $dat = $e->getMessage(); 
    return $dat; 
} 

的警告是这样的

的SimpleXMLElement :: __结构()的SimpleXMLElement .--构建]:实体:行1:分析器错误:开始标记预期, '<' 未找到

我想在调用SimpleXMLElement类构造器之前验证输入。

回答

1

php.net有一个关于处理libxml错误的gret文档。

开始加入下面的前try-catch块:

libxml_use_internal_errors(true); 
+0

谢谢英格瓦 – akniazi