我正在使用Soundcloud API来检索我的网络应用的搜索查询。我正在尝试使用q参数返回与字符串匹配的结果,并且仅限于一个用户的库(我自己的)。
使用q param,它将返回与字符串相关但与整个Soundcloud数据库相关的结果。没有q参数,我从我的库中获得结果但与字符串无关。如何从我的库中获取结果并与字符串相关?
提前致谢。
<?php
class Soundcloud_class
{
function searchTracks($criteria=array()) {
$client_id = @$criteria['client_id'];
$search = @$criteria['search'];
$genre = @$criteria['genre'];
$license = @$criteria['license'];
$offset = @$criteria['offset'];
$limit = @$criteria['limit'];
if($client_id=='') $client_id = $GLOBALS['soundcloud_client_id'];
if($search!='' || $genre!='' || $license!='') {
$url = 'http://api.soundcloud.com/users/[MY_USER_ID]/tracks.json?client_id='.$client_id;
$url .= '&q='.$search;
if($license!='') $url .= '&license='.$license;
if($genre!='') $url .= '&genres='.$genre;
if($limit!='') $url .= '&limit='.$limit;
if($offset!='') $url .= '&offset='.$offset;
$data = $this->getDataFromUrl($url);
}
echo $url.'<br>';
echo $data.'<br>';
return $data;
}
function getDataFromUrl($url) {
$ch = curl_init();
$timeout = 5;
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
}
?>