PHP的HTTP客户端Guzzle简单使用方法分析

本文实例讲述了php的http客户端guzzle简单使用方法。分享给大家供大家参考,具体如下:

首先来一段官方文档对guzzle的介绍:

然后cd到网站根目录,执行composer命令下载guzzle:(linux环境)

?

1

composer require guzzlehttp/guzzle

下载完成后会生成一个vender文件夹:

在vender同级目录新建了一个guzzle.php来写例子。

【get请求】

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

<?php

require './vendor/autoload.php';

//实例化客户端

$client = new guzzlehttp\client();

//构造url

$url = 'https://www.baidu.com';

//get请求

$res = $client->request('get', $url);

//返回状态码

echo $res->getstatuscode();

//连贯操作

//$res = $client->request('get', $url)->getbody()->getcontents();

?>

【post请求】

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

<?php

require './vendor/autoload.php';

//实例化客户端

$client = new guzzlehttp\client();

//构造url

$url = 'https://www.baidu.com';

//post请求

$res = $client->request('post', $url, [

'form_params' => [

'name'=>'lws',

'sex'=>'nan'

]

]);

//返回状态码

echo $res->getstatuscode();

?>

【post文件上传】

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

<?php

require './vendor/autoload.php';

//实例化客户端

$client = new guzzlehttp\client();

//构造url

$url = 'https://www.baidu.com';

//post请求

$res = $client->request('post', $url, [

'multipart' => [

[

'name'=>'name',

'contents'=>'lws'

],

[

'name'=>'sex',

'contents'=>'nan'

],

[

'name'=>'tupian',

'contents'=>file_get_contents('1.jpg'),

'filename'=>'lws.jpg'

]

]

]);

//返回状态码

echo $res->getstatuscode();

?>

【设置代理ip】

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

<?php

require './vendor/autoload.php';

//实例化客户端

$client = new guzzlehttp\client();

//构造url

$url = 'https://www.baidu.com';

//设置代理请求

$res = $client->request('get', $url, [

'proxy' => '111.22.33.44:6666'

]);

//返回状态码

echo $res->getstatuscode();

?>

【模拟请求头】

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

<?php

require './vendor/autoload.php';

//实例化客户端

$client = new guzzlehttp\client(['headers'=>['referer'=>'https://www.baidu,com']]);

//构造url

$url = 'https://www.baidu.com';

//设置代理请求

$res = $client->request('get', $url);

//返回状态码

echo $res->getstatuscode();

?>

【记录cookie】

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

<?php

require './vendor/autoload.php';

//实例化客户端

$client = new guzzlehttp\client(['cookie'=>true]);

//构造url

$url = 'https://www.baidu.com';

//设置代理请求

$res = $client->request('get', $url);

//返回状态码

echo $res->getstatuscode();

?>

希望本文所述对大家PHP程序设计有所帮助。

原文链接:https://blog.csdn.net/msllws/article/details/83862462

本文链接:https://my.lmcjl.com/post/14436.html

展开阅读全文

4 评论

留下您的评论.