在php中要模拟post请求数据提交我们会使用到curl函数,下面我来给大家举curl模拟post和get请求提交数据的例子,有需要的朋友可参考参考。
0、请不要问“在不在”之类的问题,有问题直接问!1、学生或暂时没有工作的童鞋,整站资源免费下载!2、¥9.9充值终身VIP会员,加我微信,826096331 拉你进VIP群学习!3、程序员加油,技术改变世界。 在线 充值
curl模拟POST提交数据:
function jsonPost($data) {
$url_service = "http://www.erdangjiade.com/jquery/demo/181/ajax.php";
$url = $url_service; //urlencode特殊字符
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url); //获取的URL地址
if (!empty($data)) { //数组不为空的时候传参
curl_setopt($ch, CURLOPT_POST, 1); //POST 开启
curl_setopt($ch, CURLOPT_POSTFIELDS, $data); //POST传参数
}
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //如果成功只将结果返回,不自动输出任何内容。如果失败返回FALSE
$output = curl_exec($ch); //执行一个curl会话
curl_close($ch); //关闭一个curl会话
$lists = json_decode($output, true); //返回的json转换数组
return $lists;
}
curl模拟GET提交数据:
function jsonGet($data) {
$url_service = "http://www.erdangjiade.com/jquery/demo/181/ajax.php";
$jsons = urlencode(json_encode($data)); //urlencode特殊字符
$url = $url_service . "?data=" . $jsons . "";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url); //获取的URL地址
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //如果成功只将结果返回,不自动输出任何内容。如果失败返回FALSE
$output = curl_exec($ch); //执行一个curl会话
curl_close($ch); //关闭一个curl会话
$lists = json_decode($output, true); //返回的json转换数组
return $lists;
}
提示:get的url传参的数组,最好加上urlencode,若出现特殊字符,会出错。
POST传数组获取数据:
<?php
$data = array("a" => "1", "b" => "2");
$arr = jsonPost($data);
echo $arr['rs'];
?>
ajax.php 的post方式获取结果。
<?php
$rs = $_POST['a']+$_POST['b'];
echo json_encode(array('rs'=>$rs));
?>
ajax.php 的get方式获取结果。
<?php
$data = json_decode(urldecode($_POST['data']),true);
$rs = $data['a']+$data['b'];
echo json_encode(array('rs'=>$rs));
?>
最后结果应显示:3
友情提示:垃圾评论一律封号 加我微信:826096331拉你进VIP群学习群