thomascombe/encryptable-fields

此包已被弃用,不再维护。作者建议使用webqamdev/encryptable-fields包。

Laravel Backpack Fields Encryptable

1.2.0 2019-11-21 20:16 UTC

This package is auto-updated.

Last update: 2020-05-12 16:09:27 UTC


README

Latest Version on Packagist Total Downloads

允许您加密一些模型字段。您可以添加散列字段以允许SQL查询

安装

您可以通过composer安装此包

composer require webqamdev/encryptable-fields

您可以通过artisan发布配置

php artisan vendor:publish --provider="Webqamdev\EncryptableFields\EncryptableFieldsServiceProvider"

用法

<?php

namespace App\Models;

use Webqamdev\EncryptableFields\Models\Traits\EncryptableFields;

class User extends
{
    use EncryptableFields;

    const COLUMN_USER_LASTNAME = 'user_lastname';
    const COLUMN_USER_LASTNAME_HASH = 'user_lastname_hash';
    const COLUMN_USER_FIRSTNAME = 'user_firstname';
    const COLUMN_USER_FIRSTNAME_HASH = 'user_firstname_hash';
    const COLUMN_USER_MAIL = 'user_mail';

    protected $encryptable = [
        self::COLUMN_USER_FIRSTNAME => self::COLUMN_USER_FIRSTNAME_HASH,
        self::COLUMN_USER_LASTNAME => self::COLUMN_USER_LASTNAME_HASH,
        self::COLUMN_USER_MAIL,
    ];

创建

User::create(
    [
        User::COLUMN_USER_FIRSTNAME => 'watson',
        User::COLUMN_USER_LASTNAME => 'jack',
    ]
);

查找模型

User::where(User::COLUMN_USER_FIRSTNAME_HASH, User::hashValue('watson'));

User::whereEncrypted(User::COLUMN_USER_FIRSTNAME, 'watson')->get()

测试

composer test

变更日志

请参阅CHANGELOG获取最近更改的详细信息。

贡献

请参阅CONTRIBUTING获取详细信息。

致谢

许可

MIT许可(MIT)。请参阅许可文件获取更多信息。

Laravel Package Boilerplate

此包是使用Laravel Package Boilerplate生成的。