用户
 找回密码
 入住 CI 中国社区
搜索
查看: 2900|回复: 7
收起左侧

[讨论/交流] 求教钩子为什么只能echo,不能return?

[复制链接]
发表于 2012-12-16 04:12:07 | 显示全部楼层 |阅读模式
PHP复制代码
 
<?php
 
/** * * 后台权限拦截钩子 *
 
class manageauth
{
    private $CI;
    public function __construct()
    {
        $this->CI = &get_instance();
    }
    /** * 权限认证 */

 
    public function auth()
    {
        $this->CI->load->helper('url');
 
 
            $a="123456”;
 
            echo  $a;  //正常输出123456
            return   $a;  //错误,在控制器里返回1
 
    }
}
 
?>

 
复制代码


钩子里的echo,在控制器里能正常输出:123456。
但如果换成 return 为什么就不行?
请教高手们, 如何在控制器里取得 $a的值?




 楼主| 发表于 2012-12-16 15:57:28 | 显示全部楼层
求高手解答呢
发表于 2012-12-16 18:46:27 | 显示全部楼层
这是什么问题啊,小萌,HOOK,跟控制器有什么关系啊,如果你想传值你用session吧
 楼主| 发表于 2012-12-16 19:05:31 | 显示全部楼层
LEUNGHING_ 发表于 2012-12-16 18:46
这是什么问题啊,小萌,HOOK,跟控制器有什么关系啊,如果你想传值你用session吧 ...

  比如我在HOOK里面取得 $a= coockie 的值,并判断是否和数据库里的一致。

正确就显示 会员中心 控制器,我想直接取得这个HOOK里的coockie值怎么办呢?

发表于 2012-12-16 19:56:14 | 显示全部楼层
你设置一个$this->session->set_userdata('a','value');你去到哪都可以获取到这个变量$a ,你只需 $this->sesseion->userdata('a');
 楼主| 发表于 2012-12-16 20:00:43 | 显示全部楼层
LEUNGHING_ 发表于 2012-12-16 19:56
你设置一个$this->session->set_userdata('a','value');你去到哪都可以获取到这个变量$a ,你只需 $this->se ...

  我想要是读取hook里的变量呢,不仅限于 session和cookie,也有可能我在hook里自定义的变量$b 什么的。
发表于 2013-1-17 15:38:37 | 显示全部楼层
晕,那你就使用全局变量吧
 楼主| 发表于 2013-1-17 20:24:21 | 显示全部楼层
LEUNGHING_ 发表于 2013-1-17 15:38
晕,那你就使用全局变量吧

谢谢,用全局了。。

本版积分规则