日期:2014-05-17  浏览次数:20507 次

这句话什么意思?麻烦详解
$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 类的实例
从书写格式上看,这应该是单例模式的