这个类主要是前台显示的主键ID转化成一串无规律的字符串,比较像 Youtube、Youku、Weibo之类的 id 名,从某种意义上可以防采集。
首先设置配置信息(可以不设置配置信息通过传参形式)
return [
// Hashids 的配置项
'length' => 9, // 加密字符串长度
'salt' => 'tphui', // 加密钥匙
'alphabet' => '', // 字符仓库,不填写默认为扩展里的字符仓库
];
导入Hashids函数
<?php
/*
Hashids
http://hashids.org/php
(c) 2013 Ivan Akimov
https://github.com/ivanakimov/hashids.php
hashids may be freely distributed under the MIT license.
*/
namespace Hashids;
/**
* HashGenerator is a contract for generating hashes
*/
interface HashGenerator {
/**
* Encodes a variable number of parameters to generate a hash
*
* @param mixed ...
*
* @return string the generated hash
*/
public function encode();
/**
* Decodes a hash to the original parameter values
*
* @param string $hash the hash to decode
*
* @return array
*/
public function decode($hash);
/**
* Encodes hexadecimal values to generate a hash
*
* @param string $str hexadecimal string
*
* @return string the generated hash
*/
public functi