将参数传递给函数时,如果函数不应该更改该参数的值,则约定是按值传递。仅当函数要修改该变量时,我们才传递 &byref。
另一方面,我们知道当按引用传递时,PHP 使用指针,而不是像按值传递那样复制变量的副本。
这在我的脑海中提出了一个问题,我们是否应该不时通过引用将某些变量传递给我们的函数以达到速度和效率的目的——即使我们不需要修改它们。
没有对这个想法发疯和完全滥用它,我想为我在这里谈论哪些变量或什么样的变量提供一个参考框架。
它们主要是 $dbh(数据库句柄)和非常大的变量。说实话,只是 $dbh 的!真的。
在您看来,您认为这是一种很好的做法,还是您认为它永远不应该被实践。
让我们把这个问题归结为一个代码片段并对此进行评论。
//假设$dbh是mysql连接的database_handle
for ($userID = 1; $userID <= 1000; $userID++) {
display_name ($dbh,"users",$userID)// outputs the name of the passed userid
}
在这里, display_name 函数应该按引用还是按值获取 $dbh?