Php Codeigniter:在同一个控制器中有很多功能

Php Codeigniter:在同一个控制器中有很多功能,php,mysql,codeigniter,Php,Mysql,Codeigniter,我是codeigniter的新手,我刚学会使用codeigniter已经两周了。 我在一个控制器中使用了26个以上的函数,每个函数加载不同的视图。我的问题是,当我加载这个控制器(XXX.php)中的函数X时,是否只加载了X函数?或者所有的控制器(所有的XXX.php文件),我担心这会导致网站加载时间过长吗 在运行控制器之前(与所有PHP一样)会对其进行解析,但它只会调用特定的函数 要对正在发生的事情有一个模糊的概念,您可以使用: $this->output->enable_profi

我是codeigniter的新手,我刚学会使用codeigniter已经两周了。
我在一个控制器中使用了26个以上的函数,每个函数加载不同的视图。我的问题是,当我加载这个控制器(XXX.php)中的函数X时,是否只加载了X函数?或者所有的控制器(所有的XXX.php文件),我担心这会导致网站加载时间过长吗

在运行控制器之前(与所有PHP一样)会对其进行解析,但它只会调用特定的函数

要对正在发生的事情有一个模糊的概念,您可以使用:

$this->output->enable_profiler(TRUE);
在一个函数中,然后调用它…它将在页面底部显示探查器

有关探查器的更多信息,请访问:


希望这有帮助:)

这是您最不关心的,加载一个包含26个方法的类。您应该关心被调用的操作执行起来花费了太多的时间。因此,方法的调用与类的内容无关,如果我使用的方法对于执行来说不是太长,那么即使控制器中有26个函数,页面也不会太长而无法加载?只要该方法没有被触发(即:controller/trigger_方法),它将不被考虑(除非控制器类是由PHP实例化的,这一点你无论如何都不应该关心)。当它被触发时,它将消耗时间和内存,这是你应该进行基准测试的地方。你能解释触发时的含义吗?:)如果你还有10分钟的时间,我还可以解释php是如何工作的,以及为什么地球是圆的:)撇开这个玩笑不谈,当你访问像
www.mysite.com/hello/world
这样的url时,名为hello的控制器被实例化,并且作为该控制器一部分的world方法被触发。与
$obj=newhello()相同$obj->world()