Helper帮助类

创建文件夹

创建 /cache/exception/a/b/c/d

  1. use Timo\Helper;
  2. use Timo\Loader;
  3. $path = Loader::getFilePath('::cache/exception/a/b/c/d');
  4. Helper::mkFolders($path, 0755);

根据文件名创建文件

  1. use Timo\Helper;
  2. use Timo\Loader;
  3. //$path = E:\wwwroot\TimoSNS\cache\exception\a\b\c\d\404.log
  4. $path = Loader::getFilePath('::cache/exception/a/b/c/d/404.log');
  5. Helper::mkFile($path, 0755);
  6. 如果cache/exception/a/b/c/d/这些目录都没有,mkFile会自动创建这些文件夹

生成四层亿级路径

  1. use Timo\Helper;
  2. $path = Helper::getFourPath(123456789, 'thumb');
  3. echo $path;
  4. //输出:thumb/123/45/67/89/
  5. $path = Helper::getFourPath(100000009, 'thumb');
  6. echo $path;
  7. //输出:thumb/100/00/00/09/

获取文件扩展名

  1. Helper::getFileExt($filename);

生成随机数

生成16位随机字符串

  1. Helper::random(16)

生成9位数字

  1. Helper::random(9, true)

字符串加密解密算法

  1. use Timo\Helper;
  2. $str = 'TimoPHP';
  3. echo $str . '<br>';
  4. $auth_str = Helper::authCode($str, 'ENCODE');
  5. echo $auth_str . '<br>';
  6. $auth_str_decode = Helper::authCode($auth_str);
  7. echo $auth_str_decode . '<br>';
  8. //输出如下:
  9. //TimoPHP
  10. //e3abtrJWlicKj/1LoHFmg6vn7ICfx/3+ELAXgt4jWEfAeHMv
  11. //TimoPHP

传入加密字符串key

  1. $str = 'TimoPHP';
  2. $key = '1Cr8h7h93leD8z6sqD46';
  3. //加密
  4. $auth_str = Helper::authCode($str, 'ENCODE', $key);
  5. //解密
  6. $original_str = Helper::authCode($auth_str, 'DECODE', $key);
  7. //加密解密的时候一定要用相同的key

加密字符串过期时间

  1. 默认是不过期的
  2. //设置加密字符串过期时间为5秒
  3. $str = 'TimoPHP';
  4. $key = '1Cr8h7h93leD8z6sqD46';
  5. //加密
  6. $auth_str = Helper::authCode($str, 'ENCODE', $key, 5);
  7. //这里我们等待5秒钟,然后再解密,会发现返回空字符串,说明之前加密的字符串已过期
  8. sleep(5);
  9. //解密
  10. $original_str = Helper::authCode($auth_str, 'DECODE', $key);