重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

php模拟get请求数据,php接收get

php怎么模拟GET与POST向微信接口提交及获取数据的方法

用curl

主要从事网页设计、PC网站建设(电脑版网站建设)、wap网站建设(手机版网站建设)、响应式网站建设、程序开发、微网站、小程序制作等,凭借多年来在互联网的打拼,我们在互联网网站建设行业积累了丰富的成都网站建设、做网站、网络营销经验,集策划、开发、设计、营销、管理等多方位专业化运作于一体,具备承接不同规模与类型的建设项目的能力。

GET方法:

   //初始化

$ch = curl_init();

//设置选项,包括URL

curl_setopt($ch, CURLOPT_URL, "");

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_HEADER, 0);

//执行并获取HTML文档内容

$output = curl_exec($ch);

//释放curl句柄

curl_close($ch);

//打印获得的数据

print_r($output);

POST方法:

$url = "";

$post_data = array ("username" = "bob","key" = "12345");

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

// post数据

curl_setopt($ch, CURLOPT_POST, 1);

// post的变量

curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);

$output = curl_exec($ch);

curl_close($ch);

//打印获得的数据

print_r($output);

如何通过php的curl模拟ajax请求,获取其返回值

这个需要配合js,打开一个html页面,首先js用ajax请求页面,返回第一个页面信息确定处理完毕(ajax有强制同步功能),ajax再访问第二个页面。(或者根据服务器状况,你可以同时提交几个URL,跑几个相同的页面)

参数可以由js产生并传递url,php后台页面根据URL抓页面。然后ajax通过php,在数据库或者是哪里设一个标量,标明检测到哪里。由于前台的html页面执行多少时候都没问题,这样php的内存限制和执行时间限制就解决了。

因为不会浪费大量的资源用一个页面来跑一个瞬间500次的for循环了。(你的500次for循环死了原因可能是获取的数据太多,大过了php限制的内存)

不过印象中curl好像也有强制同步的选项,就是等待一个抓取后再执行下一步。但是这个500次都是用一个页面线程处理,也就是说肯定会远远大于30秒的默认执行时间。

对于https协议的网站,可以用php 的curl来模拟get请求和post请求吗,能得到返回值吗?

可以。

CURLOPT_PROTOCOLS

CURLPROTO_* 的位域指。如果被启用,位域值会限定libcurl在传输过程中有哪些可使用的协议。这将允许你在编译libcurl时支持众多协议,但是限制只是用它们中被允许使用的一个子集。默认libcurl将会使用全部它支持的协议。参见 CURLOPT_REDIR_PROTOCOLS .

可用的协议选项为:CURLPROTO_HTTP、CURLPROTO_HTTPS、CURLPROTO_FTP、CURLPROTO_FTPS、CURLPROTO_SCP、CURLPROTO_SFTP、CURLPROTO_TELNET、CURLPROTO_LDAP、CURLPROTO_LDAPS、CURLPROTO_DICT、CURLPROTO_FILE、CURLPROTO_TFTP、CURLPROTO_ALL

对了,可定能得到返回值

php curl如何直接转发当前php接收的headers?get请求如何直接转发get参数?post请求如何直接转发post参数?

本文实例讲述了php使用CURL模拟GET与POST向微信接口提交及获取数据的方法。分享给大家供大家参考,具体如下:

php CURL函数可以模仿用户进行一些操作,如我们可以模仿用户提交数据也可以模仿用户进行网站访问了,下面我们来介绍利用CURL模拟进行微信接口的GET与POST例子,例子非常的简单就两个:

Get提交获取数据

/**

* @desc 获取access_token

* @return String access_token

*/

function getAccessToken(){

$AppId = '1232assad13213123';

$AppSecret = '2312312321adss3123213';

$getUrl = 'htq.com/cgi-bin/token?grant_type=client_credentialappid='.$AppId.'secret='.$AppSecret;

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $getUrl);

curl_setopt($ch, CURLOPT_HEADER, 0);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURL_SSLVERSION_SSL, 2);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);

$data = curl_exec($ch);

$response = json_decode($data);

return $response-access_token;

}

post提交获取数据

/**

* @desc 实现天气内容回复

*/

public function testWeixin(){

$access_token = $this-getAccessToken();

$customMessageSendUrl = 'ht.qq.com/cgi-bin/message/custom/send?access_token='.$access_token;

$description = '今天天气的详细信息(从第三方获取)。';

$url = ttpr.com/';

$picurl = 'her.com/';

$postDataArr = array(

'touser'='OPENID',

'msgtype'='news',

'news'=array(

'articles'=array(

'title'='当天天气',

'description'=$description,

'url'=$url,

'picurl'=$picurl,

),

),

);

$postJosnData = json_encode($postDataArr);

$ch = curl_init($customMessageSendUrl);

curl_setopt($ch, CURLOPT_HEADER, 0);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, $postJosnData);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);

$data = curl_exec($ch);

var_dump($data);

}

例子相对来说比较简单也没有什么好详细分析的了,大家照抄就可以实现我们想要的功能了.

微信公众平台的开发能否用php 的curl进行模拟get提交?

可以模拟登录微信公众平台,curl一般都用post方式

也可以用httpclient这个类进行模拟

php如何通过get方法发送http请求,并且得到返回的参数

这是一个跨域访问问题,以前这种问题是比较复杂的。不过随着XML josn等等数据结构的应用

现在还是很好解决的 而且你的要求也不高 只是一个返回值的话 都用不到数据结构了 直接页面输出就好了

我写了两个简单的文件给你 里面的域名和文件名参数 你都可以自己调整 我测试是没问题的

//test.php

?php

$ch = curl_init();

$str ='';

curl_setopt($ch, CURLOPT_URL, $str);

curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, true );

$output = curl_exec($ch);

var_dump( $output );

?

//页面输出结果 string(2) "10"

//form.php 文件内容如下

?php

$id = $_GET['id'];

echo $id;

?


本文题目:php模拟get请求数据,php接收get
分享地址:http://cqcxhl.com/article/dsgsepp.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP