YurunHttpは、オープンソースのPHP HTTPライブラリ、サポートチェーン、使いやすいです。
その他すべての一般的なGET、POST、PUT、DELETE、UPDATE、アップロードとダウンロードをサポートするための要求、設定および読み取りヘッダ、クッキー、要求パラメータ、故障の再試行、制限速度、薬剤、及び他の証明書をサポートします。
パーフェクトバージョン3.0には、カール、Swooleのコルーチンをサポートしています。バージョン3.2はSwooleのWebSocketクライアントをサポートしています。
gitリポジトリのテストディレクトリには、サンプルコードです!
更新ログ(V3.2.0):
- 新しいのWebSocketクライアントサポート
WebSocketクライアントSwooleはのみの環境のためにコルーチン。
YurunHttp::setDefaultHandler(\Yurun\Util\YurunHttp\Handler\Swoole::class);
go(function(){
$url = 'ws://127.0.0.1:1234/';
$http = new HttpRequest;
$client = $http->websocket($url);
if(!$client->isConnected())
{
throw new \RuntimeException('Connect failed');
}
$client->send('data');
$recv = $client->recv();
var_dump('recv:', $recv);
$client->close();
});
作曲家
このプロジェクトは、あなたの中にPSR-4自動ロード規則に従う、作曲インストールを使用することができ composer.json
、以下のコンテンツを追加します
{ "必要":{ "yurunsoft / yurun-HTTP": "〜3.2" } }
そして、実行し composer update
てインストールを。
その後、あなたは使用することができ include "vendor/autoload.php";
、自動的にクラスをロードします。(詩:名前空間を忘れないでください)
使い方
シンプルなコール
<?PHPの 使用Yurun \ Utilの\のHttpRequest。 $ HTTP =新しいHttpRequestの。 $応答= $ HTTP-> UA( 'YurunHttp') - >( 'http://www.baidu.com')を取得。 'HTML:'エコー、PHP_EOL、$対応- >ボディ();
PSR-7のリクエスト建設
<?PHP Yurun \ Utilの\ YurunHttp \のHttp \要求を使用します。 Yurun \ Utilの\ YurunHttpを使用します。 = 'http://www.baidu.com' $ URL; //コンストラクタは定義された:__構築物($ URI = nullを 、配列ヘッダ= $ []、$本体= ''、$方法:: = RequestMethod GET、バージョン$ = '1.1'、アレイサーバーの$ = []、クッキーの配列$ = []、配列$ファイル= []) $リクエストリクエスト新しい新=($のURL); //リクエストを送信し、結果を取得 $のYurunHttpを::レスポンス=($リクエスト)を送る; のvar_dump($応答);
Swooleモードコルーチン
<?PHPは Yurun \ Utilの\ YurunHttpを使用します。 Yurun \ Utilのを\使用のHttpRequest; //設定し、デフォルトの要求処理Swoole YurunHttp :: setDefaultHandler( 'Yurun \ Utilの\ YurunHttp \ハンドラ\ Swoole'); PHP 5.4 // // :: setDefaultHandler YurunHttp(\ Yurun \ Utilの\ YurunHttp \ハンドラ\ Swoole ::クラス); PHP 5.5以降// // Swooleプロセッサはコルーチンを呼び出す必要があり ゴー( 'テスト'); 関数test() { $ HTTP HttpRequestの新しい新しい=; $レスポンス= $ HTTP-> GET( 'http://www.baidu.com'); エコー'HTML:'、値がPHP_EOL、$対応- >体()です; }
WebSocketのクライアント
YurunHttp :: setDefaultHandler(\ Yurun \ Utilの\ YurunHttp \ハンドラ\ Swoole ::クラス)。 (関数(){行く $ URL = '://127.0.0.1:WS 1234 /'; $ HTTP =新しいのHttpRequestを; $クライアント= $ HTTP->のWebSocket($のURL); ($クライアント- >をisConnected(あれば! )) { 新しい\のRuntimeException( '接続に失敗しました')投げる; } $クライアント- >)( 'データ'を送る; $のrecv = $クライアント- >のrecv(); のvar_dump( 'RECV:'、$のRECV); $クライアント- >クローズ(); });
特定の参照examples
コードディレクトリの例を
関連住所: