Отправка данных методом POST через CURL в PHP

С помощью CURL можно отправлять данные методом POST, имитируя отправку формы. Для этого нужно указать, что запрос будет делаться методом POST. Это делается с помощью следующей настройки:

curl.php<?php
  curl_setopt($curl, CURLOPT_POST, 1);
?>

Теперь нам нужно указать передаваемые данные. Они могут содержаться в виде массива:

curl.php<?php
  $data = ['field1'=>'value1', 'field2'=>'value2'];
  curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
?>

Также данные могут быть указаны в виде Query String:

curl.php<?php
  $data = 'field1=value1&field2=value2';
  curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
?>
Задание 1

Отправьте запрос на следующую страницу и получите результат:

file.php<?php
  if (!empty($_POST)) {
    echo json_encode($_POST);
  } else {
    echo 'error';
  }
?>
Задание 2

Отправьте запрос на следующую страницу и получите результат:

file.php<?php
  if (!empty($_POST)) {
    echo $_POST['num1'] + $_POST['num2'];
  } else {
    echo 'error';
  }
?>
Задание 3

Модифицируйте вашу функцию так, чтобы вторым необязательным параметром она принимала массив данных, отправляемых методом POST.