首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >codeigniter控制器机构

codeigniter控制器机构
EN

Stack Overflow用户
提问于 2010-12-07 18:17:18
回答 2查看 138关注 0票数 0

我的项目使用的是coneigniter,轻量级php框架。我对此还是个新手。

所以,我的问题是..

这是php文件。

代码语言:javascript
复制
Actor extends Controller
{
    $a = 0;

    function __construct()
    {
        $this->a = 1;  
    }

    function abc()
    {
        echo $this->a;
    }

}

那么,当我使用ajax调用Actor类的函数abc()时,构造函数__construct()每次都会被调用吗?

我是说..。在html文件中

代码语言:javascript
复制
<script>
    $.post(.... , url : "http://someaddress/actor/abc", function result(data){
        alert(data);
    });
</script>

结果数据预警是1还是0?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-12-07 18:37:52

我不明白为什么不运行这个命令来找出答案,但是原则上调用/actor/abc会导致"1“。

同样:

代码语言:javascript
复制
Actor extends Controller
{
    function __construct()
    {
        echo "always echo this ";
    }

    function abc()
    {
        echo "only echo this when called ";
    }

    function dosomethingelse()
    {
        //do other stuff
    }

}

当你点击/actor/abc时,会导致"always echo this only echo this当调用“,如果你点击了/actor/dosomethingelse,那么"always echo this”就会呈现出来。

点击此处阅读相关信息:http://php.net/manual/en/language.oop5.decon.php

(为清晰起见进行了编辑)

票数 2
EN

Stack Overflow用户

发布于 2010-12-07 18:33:04

是。每个新请求都会创建一个新的Actor实例。因此,控制器的构造函数将在每次请求时被调用。结果将是1。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4375517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档