加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 使用引用创建变量是一个好主意吗?

发布时间:2020-12-13 16:17:04 所属栏目:PHP教程 来源:网络整理
导读:例: function create_pets($cats,$dogs){ $dogs = get_dogs(); $cats = get_cats();} 所以我会称之为: function foo(){ create_pets($cats,$dogs); // here use $cats and $dogs variables normally} 我知道我可以为新的varible分配其中一个getter函数的返
例:

function create_pets(&$cats,&$dogs){
 $dogs = get_dogs();
 $cats = get_cats();
}

所以我会称之为:

function foo(){
  create_pets($cats,$dogs);

  // here use $cats and $dogs variables normally
}

我知道我可以为新的varible分配其中一个getter函数的返回值,但这只是一个例子.在我的情况下,不只是一个吸气剂……

解决方法

每个人都说的答案是“它取决于”.在您的特定示例中,“创建”函数,代码使用和维护不太明显,因此避免此模式可能是个好主意.

但是这里有个好消息,有一种方法可以做你想做的事情,这样可以保持简单和紧凑,同时不使用任何参考:

function create_pets(){
    return array(get_dogs(),get_cats());
}


function foo(){
    list($dogs,$cats) = create_pets();
    //here use $cats and $dogs variables normally
}

如您所见,您只需返回一个数组并使用the list language construct将单个变量放在一行中.这也更容易分辨出这里发生了什么,create_pets()显然正在回归新的$cats和$dogs;除非直接检查create_pets(),否则使用引用的上一个方法并不清楚.

你不会发现使用任何一种方法的性能差异,两者都会起作用.但是你会发现编写易于遵循和处理的代码最终会有很长的路要走.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读