读书人

这句话什么意思?劳驾详解

发布时间: 2013-07-01 12:33:04 作者: rapoo

这句话什么意思?麻烦详解

$mainframe =& JFactory::getApplication('administrator');

[解决办法]
引用对象JFactory中的getApplication函数,传入参数为administrator

[解决办法]
$mainframe =& JFactory::getApplication('administrator');
调用类JFactory中的静态方法getApplication
至于那个引用符号&是表示JFactory::getApplication('administrator');的值与$mainframe是同一内存地址

通俗一点讲。。
假如此php语句后JFactory::getApplication('administrator')的值发生了变化。
$mainframe也发生变化。
如果不用这个引用符号,$mainframe的值就还是JFactory::getApplication('administrator')变化之前的值
[解决办法]
$mainframe =& JFactory::getApplication('administrator');
应写作
$mainframe = JFactory::getApplication('administrator');

php5 的对象都是以引用传递的,不需要用 & 声明为传引用
如果写了将引发一个 Strict Standards: Only variables should be assigned by reference 警告

JFactory 是一个类,getApplication 是 JFactory 类的一个静态方法
JFactory::getApplication('administrator') 将返回一个 administrator 类的实例
从书写格式上看,这应该是单例模式的

读书人网 >PHP

热点推荐