CURLOPT_POST vs. CURLOPT_POSTFIELDS: ¿Se requiere la opción CURLOPT_POST?
Soy nuevo enrizo en PHP Tengo una pregunta sobre el uso de las opciones de curl.
Considere dos archivos de script: test1.php y test2.php, ambos presentes en la raíz www. Estoy usandoUbuntu 12.04 LTS. La versión de libcurl para PHP es7.22.0.
Contenido de test1.php
<?php
$ch = curl_init();
$post_data = array(
'firstname' => 'John',
'lastname' => 'Doe'
);
curl_setopt($ch, CURLOPT_URL, 'localhost/test2.php');
curl_setopt($ch, CURLOPT_POST, TRUE); //is it optional?
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
curl_exec($ch);
curl_close($ch);
?>
Contenido de test2.php
<?php
var_dump($_POST);
?>
Cuando ejecuto test1.php a través del navegador, puedo ver los resultados publicados. Ahora si elimino la opción de rizo que contieneCURLOPT_POST, el ejemplo aún funciona. Incluso si configuroCURLOPT_POST a falso, se realiza la publicación y se muestra el resultado. Entonces, es esoCURLOPT_POST no se requiere en absoluto? Se ve la opciónCURLOPT_POSTFIELDS
se encarga de enviar datos a través deENVIAR sin uso deCURLOPT_POST
opción. Cuando imprimo$_SERVER
en test2.php, el método de solicitud siempre se establece enPOST
(con o sin opciónCURLOPT_POST
)
¿Podría alguien decirme el uso exacto deCURLOPT_POST
¿opción? ¿Es necesario para enviar datos a través dePOST
?