我之前问过类似的问题,但我真的不清楚,所以我决定使用一个更具体的例子。
php 保存变量的结果还是保存运行它的过程?为什么我想知道我是否在其中存储函数,它是否存储返回值或只是复制过程
说:
function foo($something)
{
for loop
{
echo 'Something';
}
return $something;
}
$b = foo(5);
根据我遇到的情况,只需分配值即可执行该函数。这是我不想要的,因为我不想经历双重 for 循环并执行双重的内部操作。
最佳答案
在 PHP 中,您可以同时拥有两者(存储结果或函数代码)
如果你写:
function foo()
{
return 5;
}
$a = foo();
这意味着 - 执行函数 foo 并将结果存储到 $a
如果你写:
$a = function()
{
return 5;
};
$a();
这意味着 - 将函数的代码存储到变量 $a 中,然后执行存储在 $a 中的函数
关于php - 关于PHP中的内存和变量分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19279448/