| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- <?php
- /**
- * Here is your custom functions.
- */
- use plugin\admin\app\model\Admin;
- use plugin\admin\app\model\AdminRole;
- /**
- * 当前管理员id
- * @return integer|null
- */
- function admin_id(): ?int
- {
- return session('admin.id');
- }
- /**
- * 当前管理员
- * @param null|array|string $fields
- * @return array|mixed|null
- * @throws Exception
- */
- function admin($fields = null)
- {
- refresh_admin_session();
- if (!$admin = session('admin')) {
- return null;
- }
- if ($fields === null) {
- return $admin;
- }
- if (is_array($fields)) {
- $results = [];
- foreach ($fields as $field) {
- $results[$field] = $admin[$field] ?? null;
- }
- return $results;
- }
- return $admin[$fields] ?? null;
- }
- /**
- * 刷新当前管理员session
- * @param bool $force
- * @return void
- * @throws Exception
- */
- function refresh_admin_session(bool $force = false)
- {
- $admin_session = session('admin');
- if (!$admin_session) {
- return null;
- }
- $admin_id = $admin_session['id'];
- $time_now = time();
- // session在2秒内不刷新
- $session_ttl = 2;
- $session_last_update_time = session('admin.session_last_update_time', 0);
- if (!$force && $time_now - $session_last_update_time < $session_ttl) {
- return null;
- }
- $session = request()->session();
- $admin = Admin::find($admin_id);
- if (!$admin) {
- $session->forget('admin');
- return null;
- }
- $admin = $admin->toArray();
- $admin['password'] = md5($admin['password']);
- $admin_session['password'] = $admin_session['password'] ?? '';
- if ($admin['password'] != $admin_session['password']) {
- $session->forget('admin');
- return null;
- }
- // 账户被禁用
- if ($admin['status'] != 0) {
- $session->forget('admin');
- return;
- }
- $admin['roles'] = AdminRole::where('admin_id', $admin_id)->pluck('role_id')->toArray();
- $admin['session_last_update_time'] = $time_now;
- $session->set('admin', $admin);
- }
- function raffle()
- {
- $arr=[4,3,3,4,4,3,4,3,4,3,3,1,4,3,4,3,4,3,4,4,4,4,3,4,3,4,3,5,4,3,6,3,4,4,3,4,4,4,4,4,3,3,4,3,4,3,4,3,4,3,4,4,3,2,3,3,4,3,4,4,4,4,3,4,3,4,4,3,4,3,4,3,4,4,4,3,4,4,3,4,3,4,4,3,4,3,4,4,3,4,3,4,3,4,3,4,3,4,4,3,4,3,4,4,4,3,4,3,4,3,5,4,3,4,3,4,3,4,3,44,3,4,3,4,4,3,4,3,4,3,4,4,3,4,3,4,3,4,3,4,4,4,4,4,3,4,3,4,4,3,4,3,4,6,4,3,4,4,3,4,3,4,4,3,4,3];
- return $arr[mt_rand(0, 165)];
- }
|