Мне нужно создать простой скрипт php для получения информации о моем экземпляре rtorrent …
Я стараюсь много кода, но я никогда не отвечаю …
это мой последний тест
ini_set('display_errors', 1);
error_reporting(E_ALL);
function do_call($host, $port, $request) {
$url = "http://$host:$port";
$header[] = "Content-type: text/xml";
$header[] = "Content-length: ".strlen($request);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_POSTFIELDS, $request);
$data = curl_exec($ch);
if (curl_errno($ch)) {
print curl_error($ch);
} else {
curl_close($ch);
return $data;
}
}
$host = '127.0.0.1';
$port = 10001;
$request = xmlrpc_encode_request("system.listMethods()", null);
$response = do_call($host, $port, $request);
var_dump($response);
У вас есть простой рабочий тестовый код?
Это ошибка в PHP-XMLRPC.
Однако вы можете заменить свою строку:
$data = curl_exec($ch);
С:
$data = xmlrpc_decode(str_replace('i8>', 'i4>', curl_exec($ch)));
Это должно работать как ожидалось.
Других решений пока нет …