shimabox / url-status
传递url,通过查看头部信息返回状态
v1.1.0
2022-07-24 13:35 UTC
Requires
- php: ^5.6|^7.0|^8.0
Requires (Dev)
- phpunit/phpunit: ^4.8|^5.7|^9.0
This package is auto-updated.
Last update: 2024-09-24 18:30:50 UTC
README
传递url,通过查看头部信息返回状态
灵感来源于 https://secure.php.net/manual/ja/function.get-headers.php#119497
安装
$ composer require shimabox/url-status
使用
<?php require_once 'vendor/autoload.php'; $ret = \SMB\UrlStatus::get($url); $ret->targetUrl(); // string 対象のURL $ret->reachedUrl(); // string 最後に到達したURL $ret->isValidUrl(); // bool 有効なURLか $ret->redirectedUrls(); // array リダイレクトがあった際のURL $ret->redirectedCode(); // array リダイレクト時のHTTPステータスコード $ret->code(); // int 最終的なHTTPステータスコード // is{数値3桁}() でマジックメソッドが呼ばれます $ret->is200(); // bool HTTPステータスコードが200かどうか $ret->is401(); // bool HTTPステータスコードが401かどうか $ret->is403(); // bool HTTPステータスコードが403かどうか $ret->is404(); // bool HTTPステータスコードが404かどうか $ret->is405(); // bool HTTPステータスコードが405かどうか $ret->is500(); // bool HTTPステータスコードが500かどうか $ret->is503(); // bool HTTPステータスコードが503かどうか . . $ret->isxxx(); // /\Ais(\d{3})\z/ will call the magic method
示例
<?php require_once 'vendor/autoload.php'; $ret = \SMB\UrlStatus::get('https://google.com/webhp?gl=us&hl=en&gws_rd=cr'); $ret->targetUrl(); // => 'https://google.com/webhp?gl=us&hl=en&gws_rd=cr' $ret->reachedUrl(); // => 'https://www.google.com/webhp?gl=us&hl=en&gws_rd=cr' $ret->isValidUrl(); // => true $ret->redirectedUrls(); // => ['https://www.google.com/webhp?gl=us&hl=en&gws_rd=cr'] $ret->redirectedCode(); // => [301] $ret->code(); // => 200 $ret->is200(); // => true // for the POST method $data = http_build_query(['foo' => 'bar', 'hoge' => 'piyo']); $header = [ 'Content-Type: application/x-www-form-urlencoded', 'Content-Length: ' . strlen($data) ]; $options = [ 'http' => [ 'method' => 'POST', 'header' => implode("\r\n", $header), 'content' => $data ] ]; $ret = \SMB\UrlStatus::get('https:///post.php', $options);
测试
$ composer test
或
$ vendor/bin/phpunit
许可
MIT许可(MIT)。请参阅许可文件获取更多信息。