curl 模拟get和post请求

首先,模拟get请求:

curlget.php

<?php 
$url='http://localhost/lianxi/curl/post.php?name=HZD';
$ch = curl_init();// 设置URL和相应的选项
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//要求结果为字符串且输出到屏幕上
$data=curl_exec($ch);
curl_close($ch);
$data=json_decode($data,TRUE);
var_dump($data);
?>
输出结果:

array (size=1)
  ‘name‘ => string ‘HZD‘ (length=3)


模拟post请求:

curlpost.php

<?php 
$curlPost=array(
	'name' => 'hzd',
	'school' => 'HS'
);
$urlpost='http://localhost/lianxi/curl/post.php';
$ch = curl_init();//初始化curl
curl_setopt($ch,CURLOPT_URL,$urlpost);//抓取指定网页
curl_setopt($ch, CURLOPT_HEADER, 0);//设置header
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//要求结果为字符串且输出到屏幕上
curl_setopt($ch, CURLOPT_POST, 1);//post提交方式
curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);
$data = curl_exec($ch);//运行curl
curl_close($ch);
$res1=json_decode($data, TRUE);
var_dump($res1);
?>
输出结果:

array (size=2)
  ‘name‘ => string ‘hzd‘ (length=3)
  ‘school‘ => string ‘HS‘ (length=2)


请求文件post.php

<?php 
$respdata=array();
if ($_POST) {
	$respdata['name']=$_POST['name'];
	$respdata['school']=$_POST['school'];
	echo json_encode($respdata);exit();
}
if ($_GET) {
	$respdata['name']=$_GET['name'];
	echo json_encode($respdata);exit();
}
$respdata['success']=0;
echo json_encode($respdata);exit();
?>




郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。