PHP模拟POST提交的示例代码

发布时间:2019-07-17编辑:脚本学堂
分享一例PHP编程中模拟Post提交数据的代码,使用CURL方式模拟post提交数据,很实用,有需要的朋友参考下吧。

本节内容:
CURL模拟Post提交数据。

例子:
 

复制代码 代码示例:
<?php
/**
* PHP中CURL模拟Post提交
*  by www.jb200.com
*/
$url = 'http://website/a.php';
$fields = array(
'UserName'=>urlencode('a'),
'PWD'=>urlencode('b') ,
'AppReturn'=>urlencode('c') ,
'AppSQL'=>urlencode('d') ,
);
$fields_string = http_build_query($fields);
$ch = curl_init() ;
curl_setopt($ch, CURLOPT_URL,$url) ; //设置要采集的URL
curl_setopt($ch, CURLOPT_POST,1) ; //设置形式为POST 
curl_setopt($ch, CURLOPT_POSTFIELDS,$fields_string) ;//设置Post参数
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);  //用字符串打印出来。
$re = curl_exec($ch);//(如果没有设置CURLOPT_RETURNTRANSFER为1,那么将会执行并获取HTML文档内容,如:1;否则将会将结果返回,而不是执行)
print_r($re);
$info = curl_getinfo($ch);//请求的有关信息
print_r($info);
$data = array ('UserName' => 'bar');
$data = http_build_query($data);
$opts = array (
    'http' => array (
        'method' => 'POST',
        'header'=> "Content-type: application/x-www-form-urlencodedrn" .
                   "Content-Length: " . strlen($data) . "rn",
        'content' => $data
    ),
);
$context = stream_context_create($opts);
$html = file_get_contents($url, false, $context);
echo $html;
var_dump($http_response_header);

>>> 延伸阅读:
php实现模拟get和post请求的代码
php使用socket、curl、file_get_contents方法POST数据的实例
php 中 $_GET $_POST传参的长度限制
php curl中post与get应用实例代码
php curl post的简单示例
php curl实现get,post和cookie的实例代码
php接收参数及获取post原数据的方法
php curl提交GET,POST,Cookie的简单实例
php中$_GET,$_POST,$_REQUEST和$_SERVER的用法
php批量处理POST值的方法
PHP表单POST传参数时自动加转义字符问题的解决方法
php实现post php curl模拟post传输数据的函数
php curl模拟post请求的例子
php fsockopen模拟POST提交的代码