Zend framework 如何处理Zend\u Rest\u客户端\u结果?
我正在尝试使用Zend_Rest_客户端的last.fm中的API进行搜索 我该怎么处理这个回复呢?如何从响应中获取值Zend framework 如何处理Zend\u Rest\u客户端\u结果?,zend-framework,rest,Zend Framework,Rest,我正在尝试使用Zend_Rest_客户端的last.fm中的API进行搜索 我该怎么处理这个回复呢?如何从响应中获取值 object(Zend_Rest_Client_Result)[226] protected '_sxml' => object(SimpleXMLElement)[228] public '@attributes' => array 'status' => string 'ok' (length
object(Zend_Rest_Client_Result)[226]
protected '_sxml' =>
object(SimpleXMLElement)[228]
public '@attributes' =>
array
'status' => string 'ok' (length=2)
public 'results' =>
object(SimpleXMLElement)[229]
public '@attributes' =>
array
...
public 'trackmatches' =>
object(SimpleXMLElement)[230]
...
protected '_errstr' => null
如何循环跟踪匹配?我尝试的所有操作都返回空值。我无法使用Zend完成此操作。看起来像Zend_Http这样的无用类。我不得不使用“咕噜咕噜”SPL:
$url = $this->host . '?method=track.search';
$url .= '&api_key=' . $this->apikey;
$url .= '&track=' . urlencode($value);
try {
$xmlstr = file_get_contents($url);
$xml = new SimpleXMLElement($xmlstr);
//var_dump($xml->results->trackmatches);
return $xml->results->trackmatches;
} catch (Exception $e) {
echo '<h4>url = ' . $url . '</h4>';
var_dump($e);
}
$url=$this->host'?方法=track.search';
$url.='&api_key='$这是一把钥匙;
$url.='&track='。urlencode($value);
试一试{
$xmlstr=文件获取内容($url);
$xml=新的simplexmlement($xmlstr);
//变量转储($xml->results->trackmatches);
返回$xml->results->trackmatches;
}捕获(例外$e){
回显'url='。$url';
var_dump($e);
}
上面的代码将发挥神奇的作用。您必须不断取消引用,直到找到不是SimpleXMLElement对象的对象。尝试打印SimpleXMLElement对象无效
$results = $object->getIterator();
foreach($results->results->trackmatches as $t) {
echo $t->sometagname;
}
您是否尝试过
echo$result
,foreach($result as$stuff)echo$stuff
或echo$result->trackmatches
?是的,它们都返回null。我收集到的是来自魔法获得者的回报。即使使用toValue(),一切都是空的;这样你就可以循环你的结果了
$results = $object->getIterator();
foreach($results->results->trackmatches as $t) {
echo $t->sometagname;
}