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

吾爱主题 阅读:114 2021-09-15 16:31:00 评论:0

本文实例讲述了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

可以去百度分享获取分享代码输入这里。
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

【腾讯云】云服务器产品特惠热卖中
搜索
标签列表
    关注我们

    了解等多精彩内容