PHP的HTTP客戶端Guzzle簡(jiǎn)單使用方法分析
本文實(shí)例講述了PHP的HTTP客戶端Guzzle簡(jiǎn)單使用方法。分享給大家供大家參考,具體如下:
首先來一段官方文檔對(duì)Guzzle的介紹:
然后cd到網(wǎng)站根目錄,執(zhí)行Composer命令下載Guzzle:(Linux環(huán)境)
composer require guzzlehttp/guzzle
下載完成后會(huì)生成一個(gè)vender文件夾:
在vender同級(jí)目錄新建了一個(gè)guzzle.php來寫例子。
【GET請(qǐng)求】
<?php require './vendor/autoload.php'; //實(shí)例化客戶端 $client = new GuzzleHttp\Client(); //構(gòu)造url $url = 'https://www.baidu.com'; //get請(qǐng)求 $res = $client->request('GET', $url); //返回狀態(tài)碼 echo $res->getStatusCode(); //連貫操作 //$res = $client->request('GET', $url)->getBody()->getContents(); ?>
【POST請(qǐng)求】
<?php require './vendor/autoload.php'; //實(shí)例化客戶端 $client = new GuzzleHttp\Client(); //構(gòu)造url $url = 'https://www.baidu.com'; //post請(qǐng)求 $res = $client->request('POST', $url, [ 'form_params' => [ 'name'=>'lws', 'sex'=>'nan' ] ]); //返回狀態(tài)碼 echo $res->getStatusCode(); ?>
【POST文件上傳】
<?php require './vendor/autoload.php'; //實(shí)例化客戶端 $client = new GuzzleHttp\Client(); //構(gòu)造url $url = 'https://www.baidu.com'; //post請(qǐng)求 $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' ] ] ]); //返回狀態(tài)碼 echo $res->getStatusCode(); ?>
【設(shè)置代理IP】
<?php require './vendor/autoload.php'; //實(shí)例化客戶端 $client = new GuzzleHttp\Client(); //構(gòu)造url $url = 'https://www.baidu.com'; //設(shè)置代理請(qǐng)求 $res = $client->request('GET', $url, [ 'proxy' => '111.22.33.44:6666' ]); //返回狀態(tài)碼 echo $res->getStatusCode(); ?>
【模擬請(qǐng)求頭】
<?php require './vendor/autoload.php'; //實(shí)例化客戶端 $client = new GuzzleHttp\Client(['headers'=>['referer'=>'https://www.baidu,com']]); //構(gòu)造url $url = 'https://www.baidu.com'; //設(shè)置代理請(qǐng)求 $res = $client->request('GET', $url); //返回狀態(tài)碼 echo $res->getStatusCode(); ?>
【記錄Cookie】
<?php require './vendor/autoload.php'; //實(shí)例化客戶端 $client = new GuzzleHttp\Client(['cookie'=>true]); //構(gòu)造url $url = 'https://www.baidu.com'; //設(shè)置代理請(qǐng)求 $res = $client->request('GET', $url); //返回狀態(tài)碼 echo $res->getStatusCode(); ?>
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php socket用法總結(jié)》、《php字符串(string)用法總結(jié)》、《PHP數(shù)學(xué)運(yùn)算技巧總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》及《PHP網(wǎng)絡(luò)編程技巧總結(jié)》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章
php中獲得視頻時(shí)間總長(zhǎng)度的另一種方法
當(dāng)時(shí)獲得視頻長(zhǎng)度是采用網(wǎng)上的通用的獲得flv視頻文件長(zhǎng)度的方法,但是這個(gè)方法只對(duì)flv視頻支持,其他格式的視頻獲取到的值就很差了2011-09-09Windows平臺(tái)實(shí)現(xiàn)PHP連接SQL Server2008的方法
這篇文章主要介紹了Windows平臺(tái)實(shí)現(xiàn)PHP連接SQL Server2008的方法,結(jié)合實(shí)例形式分析了Windows平臺(tái)PHP連接SQL Server2008所需的相關(guān)dll動(dòng)態(tài)鏈接庫文件及相應(yīng)的配置與使用方法,需要的朋友可以參考下2017-07-07redis查看連接數(shù)及php模擬并發(fā)創(chuàng)建redis連接的方法
下面小編就為大家?guī)硪黄猺edis查看連接數(shù)及php模擬并發(fā)創(chuàng)建redis連接的方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-12-12