这篇文章给大家分享的是有关PHP的HTTP客户端Guzzle怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
首先来一段官方文档对Guzzle的介绍:
然后cd到网站根目录,执行Composer命令下载Guzzle:(Linux环境)
composer require guzzlehttp/guzzle
下载完成后会生成一个vender文件夹:
在vender同级目录新建了一个guzzle.php来写例子。
【GET请求】
<?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请求】
<?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文件上传】
<?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】
<?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(); ?>
【模拟请求头】
<?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】
<?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的HTTP客户端Guzzle怎么用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。