Я создаю класс для отправки вызовов API в Rapidshare и возврата результатов этого вызова. Вот как я хочу призыв сделать:Не удалось настроить вызов API с помощью массива параметров
$rs = new rs();
$params = array(
'sub' => 'listfiles_v1',
'type' => 'prem',
'login' => '10347455',
'password' => 'not_real_pass',
'realfolder' => '0',
'fields' => 'filename,downloads,size',
);
print_r($rs->apiCall($params));
А вот класс до сих пор:
class RS
{
var $baseUrl = 'http://api.rapidshare.com/cgi-bin/rsapi.cgi?sub=';
function apiCall($params)
{
$newUrl = $baseUrl;
$keys = array_keys($params);
$count = count($params);
for($i = 0; $i < $count; $i++)
{
$newUrl .= $keys[$i];
$newUrl .= '&';
$newUrl .= $params[$keys[$i]];
}
return $newUrl;
}
}
Очевидно, я возвращаюсь $newUrl
и используя print_r()
для проверки строки запроса, и это то, что она выходит как с кодом, показанного выше:
sub&listfiles_v1type&premlogin&10347455password&_not_real_passrealfolder&0fields&filename,downloads,size
Когда это должно быть:
http://api.rapidshare.com/cgi-bin/rsapi.cgi?sub=listfiles_v1&type=prem&login=10347455&password=not_real_pass&realfolder=0&fields=filename,downloads,size
Надеюсь, вы увидите, что я пытаюсь сделать здесь: P Это, вероятно, глупая ошибка, которую я не могу найти или логическую ошибку.
Заранее спасибо.