Caution
[[DEPRECATED]] This repository is no longer maintained.
We'll delete this repository & unpublish package at 2017/12/31., (*1)
Bolster PHP http module
What is Bolster
Bolsterใฏใ้ทๆใปๆฏๆๆใฎใใใชๆๅณใใใใพใใ
้็บ่
ใๆฏใใฆไผใพใใใใใใชใฉใคใใฉใช้กใ็ใฃใๅๅใงใ, (*2)
http://ejje.weblio.jp/content/bolster, (*3)
class structure
Bolster\
โโโ Http\
โย ย โโโ Parser\
โย ย โย ย โโโ JsonParser.php
โย ย โย ย โโโ ParserInterface.php
โย ย โย ย โโโ PlainParser.php
โย ย โโโ Request.php
โย ย โโโ Response.php
โโโ Http.php
install
add your composer.json to, (*4)
{
"require": {
"bolster/http": "0.8"
}
}
usage
basic
<?php
$http = new Bolster\Http();
$response = $http->get('https://qiita.com/api/v1/users/L_e_k_o');
echo $response;
stdout:, (*5)
{"id":3338,"url_name":"L_e_k_o","profile_image_url":"https://pbs.twimg.com/profile_images/453306597716930561/fcy5Qh53_normal.jpeg",...
with http header and response parser
<?php
$http = new Bolster\Http();
$parser = new Bolster\Http\Parser\JsonParser();
$http->setParser($parser);
$http->setHeaders('Accept', 'application/vnd.github.v3+json');
$http->setHeaders('User-Agent', 'Bolster-Http-Module');
$json = $http->get('https://api.github.com/users/Leko');
var_dump($json);
stdout:, (*6)
array(30) {
'login' =>
string(4) "Leko"
'id' =>
int(1424963)
'avatar_url' =>
string(51) "https://avatars.githubusercontent.com/u/1424963?v=2"
'gravatar_id' =>
string(32) "13fbd31a4503c352369aab017e3edef7"
'url' =>
string(33) "https://api.github.com/users/Leko"
...
with context option
<?php
$http = new Bolster\Http();
$http->setHttpContextOptions('ignore_errors', false);
$http->get('http://hogehoge.com/404');
throw errors:, (*7)
PHP Warning: file_get_contents(http://hogehoge.com/404?): failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found
in /PATH/TO/source/Bolster/Http/Request.php on line 101
PHP Stack trace: ...