phpcurl模拟post请求提交数据例子总结概要
php curl模拟post请求提交数据例子总结
在php中要模拟post请求数据提交我们会使用到curl函数,下面我来给大家举几个curl模拟post请求提交数据例子有需要的朋友可参考参考。
注意:curl函数在php中默认是不被支持的,如果需要使用curl函数我们需在改一改你的php.ini文件的设置,找到php_curl.dll去掉前面的;就行了
例1
?代码如下 复制代码 ?php$uri = /test.php;// 参数数组$data = array (??????? name = tanteng?// password = password);?$ch = curl_init ();// print_r($ch);curl_setopt?( $ch, CURLOPT_URL, $uri );curl_setopt ( $ch, CURLOPT_POST, 1 );curl_setopt ( $ch, CURLOPT_HEADER, 0 );curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );$return = curl_exec ( $ch );curl_close ( $ch );?print_r($return);
接受php页面远程服务器:
?phpif(isset($_POST[name])){??? if(!empty($_POST[name])){??????? echo 您好,,$_POST[name].!;??? }}? 例2
用CURL模拟POST请求抓取邮编与地址
完整代码:
?代码如下 复制代码 #!/usr/local/php/bin/php?php$runtime = new runtime ();$runtime-start ();
$cookie_jar = tempnam(/tmp,cookie);
?
$filename = $argv[1];$start_num= $argv[2];$end_num? = $argv[3];
?
for($i=$start_num; $i$end_num; $i++){??? $zip = sprintf(6s,$i);
??? $fields_post = array(??????????? postcode = $zip,???????????? queryKind = 2,???????????? reqCode = gotoSearch,???????????? search_button.x=37,??????????? search_button.y=12??????????? );
??? $fields_string = http_build_query ( $fields_post, );??? $ch = curl_init();??? curl_setopt($ch, CURLOPT_URL, URL?reqCode=gotoSearchqueryKind=2postcode=.$zip);??? curl_setopt($ch, CURLOPT_HEADER, true);??? curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);??? curl_setopt($ch, CURLOPT_POST, true);??? curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 120 );??? curl_setopt($ch, CURLOPT_REFERER, $refer );??? curl_setopt($ch, CURLOPT_HTTPHEADER, $headers_login );??? curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_jar );??? curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie_jar );??? curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER[HTTP_USER_AGENT]);???? curl_setopt($ch, CURLOPT_POST, 1); // 发送一个常规的Post请求???? curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string );
??? $data = curl_exe
原创力文档

文档评论(0)