twincitiespublictelevision/libpbsauth
Composer 安装命令:
composer require twincitiespublictelevision/libpbsauth
包简介
General structures for working with PBS Sign In auth data
README 文档
README
libpbsauth is a small package containing a few classes for structured
usage of PBS Sign In auth data.
Overview
Provides classes for Owner, VPPA, and Token objects, along with a wrapper class
PBSAuth. Creating a record returns a *Result class. The result encapsulates either
the created object or the error depending on the success of call.
Usage
Documentation can be found at https://twincitiespublictelevision.github.io/libpbsauth/
Result classes provide a return style for capturing the success or failure of a given operation in a single return value. The value or error can then be extracted from the result by the calling code and be conditionally used. An ok value represents the success of an operation, whereas an err value represents the failure of an operation.
When attempting to parse an array, stdClass, or string an ok will be returned if the entire parsing of the record succeeds. If any of the steps fail then an err is returned containing the failure.
An example of generic usage of a Result:
$resultA = Result::ok("foo"); echo $resultA->value(); // foo $resultB = Result::err(new \Exception("Bar error"); echo $resultB->value(); // PHP Fatal error: Uncaught exception ...
To safely handle a result and extract its value the caller can use either conditionals or try / catch syntax
$resultA = Result::ok("foo"); if ($resultA->isOk()) { echo $result->value(); // foo } else { // ... } $resultB = Result::err(new \Exception("Bar error"); try { echo $resultB->value(); } catch (\Exception $e) { echo $e->getMessage(); // Bar error }
Requirements
- PHP >= 7.1
Install
- Add to the repositories key of your composer.json file:
{
"type": "vcs",
"url": "https://github.com/twincitiespublictelevision/libpbsauth.git"
}
- Run
composer require twincitiespublictelevision/libpbsauthto pull in the package
统计信息
- 总下载量: 3
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 3
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: proprietary
- 更新时间: 2018-11-29