您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

最近开发zen cart有些问题想咨询下!

2024/3/29 19:27:30发布11次查看
最近在用zen cart商城系统做东西!看到了一下代码!
  function notify($eventid, $paramarray = array()) {
    $observers =  & base::getstaticobserver();
    if (!is_null($observers))
    {
      foreach($observers as $key=>$obs) {
        if ($obs['eventid'] == $eventid) {
          $obs['obs']->update($this, $eventid, $paramarray);
        }
      }
    }
  }
function  & getstaticobserver() {
    return base::getstaticproperty('observer');
  }
在类里面每个function后面都会出现个& 是什么意思。
base::getstaticobserver()的意思应该是表示某类的方法!至于在前面加个&是引用么?
为什么在定义方法时也加个&
求大神详细解释下!
回复讨论(解决方案) & 引用
第一处 表示得到的是一个引用
第二处 表示该方法将返回一个引用
最终,$observers 是 base::$observer 的引用
对 $observers 的任何修改都会影响到 base::$observer
进而会影响到所有使用 base::$observer 的行为
如果 base::$observer 不是用于调度的话,这种写法是不可取的
当然,即便 base::$observer 适用于调度的,也不推荐这种写法。太隐晦了
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product