Передать массив PHP в функцию?

#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);
  

(делайте это только тогда, когда вы уверены, что знаете, что делаете)