php – 在函数范围之外引用变量的哪种方法更好?
发布时间:2020-12-13 21:43:19 所属栏目:PHP教程 来源:网络整理
导读:我可以通过以下两种方式之一更改函数中的$var:通过引用传递它或使用global关键字. $var1 = 10;function test1() { global $var1; $var1++;}function test2($var) { $var++;} 两种方法都有相同的结果,但它们之间有什么区别吗?哪一个更受欢迎哪一个更快? 解
我可以通过以下两种方式之一更改函数中的$var:通过引用传递它或使用global关键字.
$var1 = 10; function test1() { global $var1; $var1++; } function test2(&$var) { $var++; } 两种方法都有相同的结果,但它们之间有什么区别吗?哪一个更受欢迎哪一个更快? 解决方法
1.他们都不是首选.
除非你有特殊的理由不这样做,否则首选的是 $var1 = 10; $var1 = test3($var1); function test3($var) { return $var + 1; } 引入程序不同部分之间的耦合(如果使用全局)是您应该总是合理地避免的事情. 另外,如果没有具体的理由让你的函数通过引用接受它的参数,你也应该避免这样做.所有函数中只有非常微小的一部分就是这样的,所以如果没有别的东西,那么使用这些代码的开发人员之间就不会产生混淆. 你不需要考虑哪一个更快. 除非您在真实场景下对应用程序进行了分析,并且发现此函数是一个瓶颈(当然它永远不会以这种简单的形式出现),然后以编写清晰且可维护的代码为代价优化性能不仅毫无意义,但也有害. 作为奖励,我应该提到使用引用可能实际上使函数slower. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |