使用Soundcloud API限制q param结果

时间:2014-02-20 12:26:01

标签: soundcloud q param

我正在使用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;
    }

}

?>

0 个答案:

没有答案