dynamophp/hash-bundle

用于使用 dynamophp/hash 库的 Symfony 扩展包

1.0.2 2022-12-26 21:03 UTC

This package is auto-updated.

Last update: 2024-09-27 00:38:31 UTC


README

目标

本 Symfony 扩展包是连接 Dynamo-PHP-Hash Lib 和 Symfony 应用程序的桥梁。

扩展包提供了一个接口(Dynamophp\HashBundle\Service\DynamoHasherInterface),可以轻松使用预配置的 Hasher

使用方法

composer require dynamophp/hash-bundle

配置

dynamo_php_hash:
  start_selection: 3
  end_selection: 0
  • start_selection : 从主哈希函数的结果中选择 X 个前十六进制字符。
  • end_selection : 从主哈希函数的结果中选择 X 个后十六进制字符。

关于此实现的更多信息可以在 此处 找到。

目前,扩展包仅提供 sha256 哈希器版本,它使用此算法作为底层哈希器的主哈希函数。

在代码中的使用

在您的控制器中

DemoController.php

#[Route('/demo/', name: 'demo_')]
class DemoController extends AbstractController
{
    #[Route(name: 'index')]
    public function demoIndex(DynamoHasherInterface $dynamoHasher): Response
    {
        dump($dynamoHasher->hash('ob')); // 48
        dump($dynamoHasher->hash('oc')); // 32
        dump($dynamoHasher->hash('od')); // 23
        dump($dynamoHasher->hash('a')); // 38
        dump($dynamoHasher->hash('b')); // 22
        
        return new JsonResponse('ok');
    }
}

在您的服务中

DemoService.php

class DemoService extends AbstractController
{
    public __construct(private readonly DynamoHasherInterface $dynamoHasher){}
    
    public function doSmth(string $value): void
    {
        dd($dynamoHasher->hash($value)); 
    }
}