使用LMLPHP实现简单的CURL请求POST例子技术
不知道在哪里看到过的文字,说 PHP CURL 很强大,但是搞了这么久,不知道强大在哪。不过仔细一看,确实挺强大的,可以实现所有的 HTTP 请求,难道还不强大吗?
说实话,如果是进行简单的 GET 请求,我个人认为根本不需要 CURL,PHP 的 file_get_contents 足够方便和强大了。但是如果是 POST 并且需要上传文件,HTTPS 等复杂的请求,使用 file_get_contents 好像比较麻烦吧。只能用 curl 的方式了。
下面的例子,使用 LMLPHP 做一个简单的 CURL POST 请求,发送头部 Cookie 并 提交数据,希望给大家带来帮助。代码系 LMLPHP 控制器中的节选片段,如下:
public function curltestpost()
{
$headers = array("Cookie:lmlphp=yes");
$post_data = array("您好");
$ch = curl_init("http://home.may/index/curlreceivepost");
//$ch = curl_init();
//curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_USERAGENT, 'may flowers');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
$data = curl_exec($ch);
if (curl_errno($ch)) {
print "Error: " . curl_error($ch);
} else {
var_dump($data);
curl_close($ch);
}
}
public function curlreceivepost(){
var_dump($_COOKIE);
var_dump($_POST);
}
$ php index.php /index/curltestpost
string(80) "array(1) { ["lmlphp"]=> string(3) "yes"}array(1) { [0]=> string(6) "您好"}"
暂无