2011-03-03 57 views
1

我有以下cUrl函数调用返回响应代码。检查来自php curl_exec()的响应?

$result = curl_exec($ch); 

我需要检查以下响应属性的$结果。

<isValidPost>true</isValidPost> 

我总是可以解析并检查确切的字符串,但有没有其他方法来检查?

回答

3

假定该API的使用石头(即不会在片刻的通知改变)设置,在这种情况下,它可能是安全的一个简单的字符串搜索

if (false !== strpos($result, '<isValidPost>true</isValidPost>')) { 

然而,要做到这一点更可靠的方式,你可能想要做的DOM解析:

$dom = new DOMDocument; 
$dom->parseXML($result); 
$isValidPostTag = $dom->getElementsByTagName('isValidPost')->item(0); 
if ($isValidPostTag) { 
    $isValidPost = $isValidPostTag->nodeValue == 'true'; 
} else { 
    $isValidPost = false; 
} 
2

您是否获得XML响应?然后解析XML

$xml = new SimpleXMLElement($result); 
if(isset($xml->your_element->isValidPost)){ 
    //do what you need 
}