DownloadPHP Nano Http Status
 
 
 
 
 
 
 
  
Truly minimalistic and self-contained package to handle HTTP statuses and relevant description messages. Such packages as 
Teapot or Httpstatus are nice and famous, but still
either too heavy and over-complicated or simply does not fit to Gino Pane's high code quality standards. 
Requirements
Features
- 
The full list of HTTP status codes as readable constants;
 
- 
relevant status messages;
 
- 
ability to customize messages;
 
- 
ability to easily detect the class of the status;
 
- 
no dependencies in production;
 
- 
integrated tools for code quality, testing and building docs.
 
 
Installation
composer require gino-pane/nano-http-status
 
Basic Usage
Check existence of the code (using numeric codes or nice readable constants): 
(new NanoHttpStatus())->statusExists(200); //true
(new NanoHttpStatus())->statusExists(400); //true
(new NanoHttpStatus())->statusExists(451); //true
(new NanoHttpStatus())->statusExists(511); //true
(new NanoHttpStatus())->statusExists(522); //false
 Detect the class of the code using code numbers: 
(new NanoHttpStatus())->isInformational(NanoHttpStatus::HTTP_OK); //false
(new NanoHttpStatus())->isSuccess(202);         //true
(new NanoHttpStatus())->isRedirection(301);     //true
(new NanoHttpStatus())->isClientError(404);     //true
(new NanoHttpStatus())->isServerError(NanoHttpStatus::HTTP_BAD_REQUEST); //false
 Get status message by status code: 
(new NanoHttpStatus())->getMessage(200); //OK
(new NanoHttpStatus())->getMessage(451); //Unavailable For Legal Reasons
(new NanoHttpStatus())->getMessage(452); //Undefined Status
 Set localization mapping and get custom status messages: 
$status = new NanoHttpStatus([
    NanoHttpStatus::HTTP_BAD_REQUEST => 'Very bad request',
    NanoHttpStatus::HTTP_BAD_GATEWAY => 'Not so bad gateway'
]);
$status->getMessage(400); //'Very bad request'
$status->getMessage(502); //'Not so bad gateway'
 Please note, that `NanoHttpStatus` itself does not throw any exceptions for invalid statuses. 
Useful Tools
Running Tests:
php vendor/bin/phpunit
 
 or  
composer test
 
Code Sniffer Tool:
php vendor/bin/phpcs --standard=PSR2 src/
 
 or 
composer psr2check
 
Code Auto-fixer:
php vendor/bin/phpcbf --standard=PSR2 src/ 
  or 
composer psr2autofix
 
Building Docs:
php vendor/bin/phpdoc -d "src" -t "docs"
 
 or  
composer docs
 
Changelog
To keep track, please refer to CHANGELOG.md. 
Contributing
- 
Fork it.
 
- 
Create your feature branch (git checkout -b my-new-feature).
 
- 
Make your changes.
 
- 
Run the tests, adding new ones for your own code if necessary (phpunit).
 
- 
Commit your changes (git commit -am 'Added some feature').
 
- 
Push to the branch (git push origin my-new-feature).
 
- 
Create new pull request.
 
 
Also please refer to CONTRIBUTION.md. 
License
Please refer to LICENSE. 
Notes
Powered by composer-package-template 
 |