Envío de datos por método POST mediante CURL en PHP

Con CURL se pueden enviar datos por método POST, simulando el envío de un formulario. Para ello es necesario indicar que la solicitud se realizará por método POST. Esto se hace mediante la siguiente configuración:

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

Ahora necesitamos especificar los datos que se van a transmitir. Pueden contenerse en forma de array:

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

Los datos también pueden especificarse en forma de Query String:

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

Envíe una solicitud a la siguiente página y obtenga el resultado:

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

Envíe una solicitud a la siguiente página y obtenga el resultado:

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

Modifique su función de modo que, como segundo parámetro opcional, acepte un array de datos enviados por método POST.