kduma/eloquent-tokenable

允许在 Laravel Eloquent 模型中使用 tokens(HashIDs)代替 id。

v1.1.2 2020-10-06 23:28 UTC

README

Latest Stable Version Total Downloads Latest Unstable Version License SensioLabsInsight StyleCI

允许在 Laravel Eloquent 模型中使用 tokens(HashIDs)代替 id。

设置

将包添加到 composer.json 的 require 部分,并运行 composer update

"kduma/eloquent-tokenable": "^1.1"

准备模型

在你的模型中添加以下行

use \KDuma\Eloquent\Tokenable;
protected $appends = array('token');

可选地,你也可以添加以下内容

  • protected $salt = 'SALT';
    用于生成哈希的盐。默认为表名。此盐添加到你的 APP_KEY

  • protected $length = 10;
    盐长度。默认为 10。

  • protected $alphabet = 'qwertyuiopasdfghjklzxcvbnm1234567890';
    哈希字母表。默认为 abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890

用法

  • $model->token - 生成 tokens
  • Model::whereToken($id)->first() - 通过 token 查找。(whereToken 是查询作用域)

Hashids

特别感谢 hashids 的创建者,这是一个 PHP 类,本包基于此。

Packagist

在 Packagist.org 上查看此包: kduma/eloquent-tokenable