首页 新闻 会员 周边

php static

0
悬赏园豆:40 [已解决问题] 解决于 2013-08-19 14:51

RT,用CI框架在写一个php网页,现发现static关键字不太会用,简化代码如下:

class A extends CI_Controller{
    private static $num = 0;
    public function f1(){
        self::$num = 1;
        this->load->view('v1');
    }
    public function f2(){
        if(self::$num === 1){
            this->load->view('v2');            
        }else{
            this->load->view('v3');
        }
    }
}

刚开始我们访问函数f1,在f1中跳转到页面v1,然后在v1中又跳回f2,但是此时的num已经被重置了,会跳转到v3,这是为什么呢?php中的static不彻底吗?

qq690388648的主页 qq690388648 | 初学一级 | 园豆:5
提问于:2013-08-09 16:06
< >
分享
最佳答案
1

将 self::$num 改为 A::num 试试

收获园豆:40
dudu | 高人七级 |园豆:30994 | 2013-08-09 17:55

效果还是一样的……是不是不可能实现这个过程啊?重新通过url进入某个controller,之前这个controller的static成员还保留着。

qq690388648 | 园豆:5 (初学一级) | 2013-08-10 10:22
dudu | 园豆:30994 (高人七级) | 2013-08-10 10:45

@dudu: 看了那个,可能真是不能实现重新访问这个网页之后还保留着原来的变量吧……

qq690388648 | 园豆:5 (初学一级) | 2013-08-19 14:50
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册