PHP通过curl向其它服务器发请求并返回数据(代码示例)

来源:不言 发布时间:2019-01-16 15:02:47 阅读量:799

本篇文章给大家带来的内容是关于PHP通过curl向其它服务器发请求并返回数据(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

在很多时候,我们都需要请求第三方的服务器来获取一些数据,比如token,比如百度的主动推送,那么我们的php如何实现向第三方服务器发请求呢?我们可以通过curl来实现

首先定义请求的url,然后创建httpHeader的头,定义通过post方式发送请求的参数:

初始化curl:

1

2

3

4

5

6

7

$url="URL地址";

//然后创建httpHeader的头:

$httpHeader=createHttpHeader();

//定义通过post方式发送请求的参数:

$curlPost="userId=".$userId."&name=".$nickName."&portraitUri=".$headImg;

//初始化curl:

$ch=curl_init();undefined

发送请求:

1

2

3

4

5

6

7

8

9

curl_setopt($ch,CURLOPT_URL,$url);

curl_setopt($ch,CURLOPT_HTTPHEADER,$httpHeader);

curl_setopt($ch,CURLOPT_HEADER,false);

curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);

curl_setopt($ch,CURLOPT_POST,1);

curl_setopt($ch,CURLOPT_POSTFIELDS,$curlPost);

curl_setopt($ch,CURLOPT_TIMEOUT,30);

curl_setopt($ch,CURLOPT_DNS_USE_GLOBAL_CACHE,false);

curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);undefined

接收返回的数据:$data=curl_exec($ch);关闭curl:curl_close($ch);这样就通过curl完成了一次post请求,并获取到了返回的数据。

完整PHP源码如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

$url="请求的URL地址";

$httpHeader=createHttpHeader();

$curlPost="userId=".$userId."&name=".$nickName."&portraitUri=".$headImg;

$ch=curl_init();

curl_setopt($ch,CURLOPT_URL,$url);

curl_setopt($ch,CURLOPT_HTTPHEADER,$httpHeader);

curl_setopt($ch,CURLOPT_HEADER,false);

curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);

curl_setopt($ch,CURLOPT_POST,1);

curl_setopt($ch,CURLOPT_POSTFIELDS,$curlPost);

curl_setopt($ch,CURLOPT_TIMEOUT,30);

curl_setopt($ch,CURLOPT_DNS_USE_GLOBAL_CACHE,false);

curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);

$data=curl_exec($ch);

curl_close($ch);undefined


标签: PHP
分享:
评论:
你还没有登录,请先