php curl post提交数据

Posted wth9

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php curl post提交数据相关的知识,希望对你有一定的参考价值。

我也是第一次用 ,如果觉得写的不好,可以指出来(大家一起学习)!

需要将数组数据提交到http://wx.com/index.php/index/Test/index2

我这边方便测试直接添加到test数据库中,没刷新一次数据库新增一条数据(post提交数组成功)。

<?php
namespace appindexcontroller;
use thinkConfig;
use thinkDb;
use thinkController;
use thinkRequest;

class Test extends controller
{
public function index()
{
$url = "http://wx.com/index.php/index/Test/index2";
$data = [‘id‘=>1,‘info‘=>‘test‘,‘test‘=>‘123456‘];
$res = $this->postResult($url, $data);
}
/**
* @$res curl提交数据成功,数据库新增数据
* @return [type] [description]
*/
public function index2()
{
$request = Request::instance();
$post = $request->param();
$res = [
// ‘id‘ =>$post[‘id‘],
‘name‘ =>$post[‘info‘],
‘test‘ =>$post[‘test‘],
];
$info = Db::name(‘test‘)->insert($res);
}

/**
* [postResult description]
* @param [type] string $url post的网址
* @param [type] array $data post的数据
* @return [type] resource 页面
*/
public function postResult($url, $data)
{
//初使化init方法
$ch = curl_init();
//指定URL
curl_setopt($ch, CURLOPT_URL, $url);
//设定请求后返回结果
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//声明使用POST方式来进行发送
curl_setopt($ch, CURLOPT_POST, 1);
//发送什么数据呢
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
//忽略证书
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
//忽略header头信息
curl_setopt($ch, CURLOPT_HEADER, 0);
//设置超时时间
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
//发送请求
$output = curl_exec($ch);
//关闭curl
curl_close($ch);
//返回数据
return $output;

}
}



























































以上是关于php curl post提交数据的主要内容,如果未能解决你的问题,请参考以下文章

php curl post提交数据

用php做个post提交

在php中分别使用curl的post提交数据的方法和get获取网页数据的方法

php中 curl模拟post发送json并接收json(转)

CURL模拟POST请求实例

PHP模拟POST提交数据并获得返回值之CURL方法(使用PHP extension,然后使用php_curl.dll,很不错)