*/ namespace app\util; class Tools { public static function getDate($timestamp) { $now = time(); $diff = $now - $timestamp; if ($diff <= 60) { return $diff . '秒前'; } elseif ($diff <= 3600) { return floor($diff / 60) . '分钟前'; } elseif ($diff <= 86400) { return floor($diff / 3600) . '小时前'; } elseif ($diff <= 2592000) { return floor($diff / 86400) . '天前'; } else { return '一个月前'; } } /** * 二次封装的密码加密 * @param $str * @param string $auth_key * @return string * @author zhaoxiang */ public static function userMd5($str, $auth_key = '') { if (!$auth_key) { $auth_key = config('apiAdmin.AUTH_KEY'); } return '' === $str ? '' : md5(sha1($str) . $auth_key); } /** * 判断当前用户是否是超级管理员 * @param string $uid * @return bool * @author zhaoxiang */ public static function isAdministrator($uid = '') { if (!empty($uid)) { $adminConf = config('apiAdmin.USER_ADMINISTRATOR'); if (is_array($adminConf)) { if (is_array($uid)) { $m = array_intersect($adminConf, $uid); if (count($m)) { return true; } } else { if (in_array($uid, $adminConf)) { return true; } } } else { if (is_array($uid)) { if (in_array($adminConf, $uid)) { return true; } } else { if ($uid == $adminConf) { return true; } } } } return false; } /** * 将查询的二维对象转换成二维数组 * @param array $res * @param string $key 允许指定索引值 * @return array * @author zhaoxiang */ public static function buildArrFromObj($res, $key = '') { $arr = []; foreach ($res as $value) { $value = $value->toArray(); if ($key) { $arr[$value[$key]] = $value; } else { $arr[] = $value; } } return $arr; } /** * 将二维数组变成指定key * @param $array * @param $keyName * @author zhaoxiang * @return array */ public static function buildArrByNewKey($array, $keyName = 'id') { $list = array(); foreach ($array as $item) { $list[$item[$keyName]] = $item; } return $list; } }