gpt4 book ai didi

php - 解释 $CI =& get_instance();

转载 作者:IT老高 更新时间:2023-10-28 11:55:34 26 4
gpt4 key购买 nike

浏览codeigniter的源码,

在它的辅助函数中,我不断看到代码$CI =& get_instance();谁能给我解释一下这段代码是如何工作的?

我知道它正在返回对 $CI super 对象的引用,但是 get_instance() 来自哪里?

最佳答案

基本上是 Singleton Design Pattern使用函数而不是静态方法。

要深入了解,请查看 source code

所以基本上,它不会强制执行单例,但它是公共(public)函数的快捷方式...

编辑:其实,现在我明白了。为了与 PHP4 兼容,他们必须执行 double-global-variable-hack让它正确返回引用。否则引用文献会搞砸的。而且由于 PHP4 不支持静态方法(好吧,无论如何都是正确的),使用该函数是更好的方法。所以由于遗留原因它仍然存在......

因此,如果您的应用程序仅是 PHP5,那么 应该 执行 CI_Base::get_instance(); 并没有什么问题,相反,它是相同的...

关于php - 解释 $CI =& get_instance();,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4740430/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com