处理 PBS 登录认证数据的通用结构

v2.1.0 2022-03-31 03:02 UTC

This package is auto-updated.

Last update: 2024-09-29 05:49:20 UTC


README

CircleCI

libpbsauth 是一个包含一些用于结构化使用 PBS 登录认证数据的类的轻量级包。

概述

提供 OwnerVPPAToken 对象的类,以及一个包装类 PBSAuth。创建记录返回一个 *Result 类。结果封装了创建的对象或错误,具体取决于调用的成功与否。

用法

文档可在 https://twincitiespublictelevision.github.io/libpbsauth/ 找到

结果类提供了一个返回样式,用于在单个返回值中捕获给定操作的成败。然后,调用代码可以从结果中提取值或错误,并条件性使用。一个 ok 值表示操作成功,而一个 err 值表示操作失败。

当尝试解析数组、stdClass 或字符串时,如果记录的解析全部成功,则返回一个 ok。如果任何步骤失败,则返回一个包含错误的 err。

Result 的通用用法示例

$resultA = Result::ok("foo");
echo $resultA->value(); // foo

$resultB = Result::err(new \Exception("Bar error");
echo $resultB->value(); // PHP Fatal error:  Uncaught exception ...

要安全地处理结果并提取其值,调用者可以使用条件或 try / catch 语法

$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
}

要求

  • PHP >= 7.1

安装

  1. 将以下内容添加到您的 composer.json 文件的 repositories 键中
{
  "type": "vcs",
  "url": "https://github.com/twincitiespublictelevision/libpbsauth.git"
}
  1. 运行 composer require twincitiespublictelevision/libpbsauth 以引入包