CodeInterger中hook 应用场景

  1. 用于后台登录验证

    post_controller_constructor

<?php

class Auth {
   
   private $CI;
   private $loginUri = ‘welcome/login‘;
   private $loginAuth = FALSE;
   private $sessId = null;
   
   public function __construct(){
      $this->CI = &get_instance();
      $this->CI->load->helper(‘url‘);
      $this->initSession();
      $this->setLoginAuth();
   }
   
   
   public function initSession(){
      if(session_status()===1){
         session_name(SESS_NAME);
         if($this->sessId!==null){
            session_id($this->sessId);
         }
         $lifeTime = 24 * 3600; 
         session_set_cookie_params($lifeTime); 
         session_start();
      }
   }
   
   public function setLoginAuth(){
      if(!empty($_SESSION[‘admin_user_id‘])){
         $this->loginAuth = TRUE;
      }
   }
   
   public function chkLoginAuth(){
      if(!$this->loginAuth && !in_array(uri_string(),array(‘login‘, ‘login/ajaxsub‘))){
         redirect($this->loginUri);
      }
      return TRUE;
   }
}
时间: 2024-11-07 18:18:58

CodeInterger中hook 应用场景的相关文章

ActionScript3.0教你在影片剪辑中访问主场景中的变量

在ActionScript2.0中,影片剪辑访问主场景中的变量非常的简单,仅仅需要用一个带有_root的绝对路径即可. 然而在ActionScript3.0影片剪辑中访问主场景中的变量却没有那么容易,使用root将会报错.下面为大家介绍一种非常简单的方法来访问主场景中的变量. 方法如下: 1.在MC(影片剪辑实例名称)里定义一个变量father:Object; 2.在主场景代码中进行赋值 MC.father = this; 3.在影片剪辑里访问的时候就直接 father.变量名 就行.

Fragment在《暗黑3天梯榜》中使用的场景

Fragment在<暗黑3天梯榜>中使用的场景 在<Android编程权威指南>中采用了一种激进的态度来对待Fragment,即"总是使用fragment原则".<Android编程权威指南>英文名称是<Android Programming the big nerd ranch guide>,很多技术文章都是基于这本书的,在还不是很了解的情况下,我盲目的遵循了这个激进的观点.开发出了我的这个App<暗黑3天梯榜>. 事实就是

cocos 中熟练运用场景的切换

在实际游戏运用中,一个场景是远远不够的,我们必须要掌握多个场景之间的切换. 场景切换时通过Director导演类来实现的,在cocos中定义了如下几种场景切换函数: 1,void runWithScene(Scene *scene).这是一个运行场景的函数,该函数的使用情况是当前没有场景正在运行,因为一次只能运行一个场景. 2,void replaceScene(Scene *scene).   这是第一种用来切换到另一个场景的函数,用一个新的场景来代替当前场景,当前场景则会被终端释放. 3,v

Android智能手机中各种音频场景下的audio data path

上一篇文章(Android智能手机上的音频浅析)说本篇将详细讲解Android智能手机中各种音频场景下的音频数据流向,现在我们就开始.智能手机中音频的主要场景有音频播放.音频录制.语音通信等.不同场景下的音频数据流向有很大差异,即使是同一场景,在不同的模式下音频数据流向也有所不同. 1,音频播放 Android系统audio框架中主要有三种播放模式:low latency playback.deep buffer playback和compressed offload playback. a)l

配置管理 ACM 在高可用服务 AHAS 流控降级组件中的应用场景

应用配置管理(Application Configuration Management,简称 ACM)是一款应用配置中心产品.基于ACM您可以在微服务.DevOps.大数据等场景下极大地减轻配置管理的工作量,同时保证配置的安全合规.ACM 有着丰富的使用场景,本文将介绍其在 AHAS 流控降级 中的应用. 什么是 AHAS 流控降级AHAS 流控降级 是面向分布式服务架构的专业流量控制组件,主要以流量为切入点,从流量控制.熔断降级.系统保护等多个维度帮助您保障服务的稳定性,同时提供强大的聚合监控

我的监控世界观(5)--如何在监控中反映业务场景

我在<我的监控世界观>1 ~ 4 中更多的阐述了对于某个监控点的监控.存储.展现.但是在现实世界中,整个世界的联系更像是一个图,每个点可以是某个监控点,而边是他们之间的调用关系或者数据流 举例: webserver –> mysql 对于一个最简单的web 服务, 它可能有两部分组成,webserver 和 mysql存储店铺.商品信息,webserver 服务直接和浏览器用户进行交互.在这样一个业务场景中,webserver 上有的监控点,可能包括单位时间内的UV.PV,而mysql

【转】Unity3d中制作Loading场景进度条所遇到的问题 LoadLevelAsync,AsyncOperation

背景 通常游戏的主场景包含的资源较多,这会导致加载场景的时间较长.为了避免这个问题,可以首先加载Loading场景,然后再通过Loading场景来加载主场景.因为Loading场景包含的资源较少,所以加载速度快.在加载主场景的时候一般会在Loading界面中显示一个进度条来告知玩家当前加载的进度.在Unity中可以通过调用Application.LoadLevelAsync函数来异步加载游戏场景,通过查询AsyncOperation.progress的值来得到场景加载的进度. 尝试--遇到问题

asp.net core中负载均衡场景下http重定向https的问题

上周欣喜地发现,微软官方终于针对 asp.net core 在使用负载均衡的情况下从 http 强制重定向至 https 的问题提供了解决方法. app.UseForwardedHeaders(new ForwardedHeadersOptions { ForwardedHeaders = ForwardedHeaders.XForwardedProto }); var options = new RewriteOptions() .AddRedirectToHttpsPermanent();

读取xml数据装配到字典中之应用场景

前段时间看到支付宝设置里面有个多语言这个功能,蛮有意思的,就想双休没事的话做个相关的demo玩玩,可是礼拜六被妹子拽出去玩了一天,来大上海有大半年了,基本没有出去玩过,妹子说我是超级宅男,也不带她出去走走,妹子毕业后从大东北来到上海陪我一起打拼,想想蛮对不起她的.周六一天玩的很充实,走了很多路(一个星期的路都在这一天走完了),看了很多风景,回来洗个澡睡得很舒服,第二天也很清醒,其实除了写代码和玩游戏,发现双休出去走走真的挺不错的.附上几张图片,希望大家有时间多出去走走,也许有意外的收获啊! 星期