#php
#php
Вопрос:
У меня есть следующий код:
$params = array(
'api_user' => $user,
'api_key' => $pass,
'to' => 'test@test.com',
'subject' => 'testing from curl',
'html' => 'testing body',
'text' => 'testing body',
'from' => 'from@from.com'
);
/* Put the below into a function */
$request = 'api url goes here';
$session = curl_init($request);
curl_setopt ($session, CURLOPT_POST, true);
curl_setopt ($session, CURLOPT_POSTFIELDS, $params);
curl_setopt($session, CURLOPT_HEADER, false);
curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($session);
curl_close($session);
print_r($response);
/* Put the above into a function */
В принципе, я хочу поместить приведенный выше код между комментариями в функцию, чтобы я мог установить параметры, а затем выполнить следующее:
sendthat($params);
Это делается для того, чтобы просто очистить мою страницу, и запрос curl захватывает массив с помощью функции.
Как я могу передать массив в функцию?
Комментарии:
1. Как вы передаете любой другой аргумент / значение.
2. А? Ну, точно так же, как вы передаете переменную…
3. ваш код уже передает массив функции (второй
curl_setopt
вызов).
Ответ №1:
function whatever ($params) {
$request = 'api url goes here';
$session = curl_init($request);
curl_setopt ($session, CURLOPT_POST, true);
curl_setopt ($session, CURLOPT_POSTFIELDS, $params);
curl_setopt($session, CURLOPT_HEADER, false);
curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($session);
curl_close($session);
print_r($response);
}
$params = array(
'api_user' => $user,
'api_key' => $pass,
'to' => 'test@test.com',
'subject' => 'testing from curl',
'html' => 'testing body',
'text' => 'testing body',
'from' => 'from@from.com'
);
whatever($params);
Массив, присвоенный переменной, ничем не отличается от любого другого типа значения, присвоенного переменной.
Комментарии:
1. Спасибо, единственный ответ без сарказма.
Ответ №2:
function_name($params);
и в функции
extract($params);
(делайте это только тогда, когда вы уверены, что знаете, что делаете)