2015-10-01 6 views
2

Я использую эту функцию для вызова метода с одного сервера на другой в PHP.Удаленный вызов функции с параметрами

function get_url($request_url) { 
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, $request_url); 
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    $response = curl_exec($ch); 
    curl_close($ch); 
} 

$request_url = 'http://second-server-address/listening_page.php?function=somefunction'; 
$response = get_url($request_url); 

Здесь я даю URL с именем функции. Вопрос в том, что, если функция получает несколько параметров? Как передать параметры методу на другом сервере с помощью CURL.

ответ

2

Просто добавьте

$request_url = 'http://second-server-address/listening_page.php?function=somefunction&funcParam1=val&funcParam2.val 

Используйте эти параметры, передаваемые в функции

0

Если вы хотите передать параметр как запрос после попробуйте это.

function post_to_url($url, $data) { 
$fields = ''; 
foreach($data as $key => $value) { 
    $fields .= $key . '=' . $value . '&'; 
} 
rtrim($fields, '&'); 

$post = curl_init(); 

curl_setopt($post, CURLOPT_URL, $url); 
curl_setopt($post, CURLOPT_POST, count($data)); 
curl_setopt($post, CURLOPT_POSTFIELDS, $fields); 
curl_setopt($post, CURLOPT_RETURNTRANSFER, 1); 

$result = curl_exec($post); 

curl_close($post); 
} 

$data = array(
    "name" => "c.bavota", 
    "website" => "http://bavotasan.com", 
    "twitterID" => "bavotasan" 
); 

post_to_url("http://yoursite.com/post-to-page.php", $data); 
Смежные вопросы