CURLOPT_POST与CURLOPT_POSTFIELDS:是否需要CURLOPT_POST选项?
我是PHP中cURL的新手。我有一个关于使用卷曲选项的问题。
考虑两个脚本文件:test1.php 和 test2.php它们都存在于根 www 中。我使用的是 Ubuntu 12.04 LTS。PHP 的 libcurl 版本是 7.22.0。
测试内容1.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);
?>
测试内容2.php
<?php
var_dump($_POST);
?>
当我通过浏览器执行 test1.php时,我可以看到发布的结果。现在,如果我删除包含CURLOPT_POST的curl选项,该示例仍然有效。即使我将CURLOPT_POST设置为 false,也会执行 post 并显示结果。那么,这根本不需要CURLOPT_POST吗?看起来选项负责通过POST发送数据而无需使用选项。当我在 test2 中打印时.php,请求方法始终设置为(带或不带选项)。CURLOPT_POSTFIELDS
CURLOPT_POST
$_SERVER
POST
CURLOPT_POST
任何人都可以让我知道选项的确切用法吗?是否需要通过以下方式发送数据?CURLOPT_POST
POST