是否每次调用PHP函数?

时间:2016-09-08 11:55:28

标签: php performance

每次调用它时,是否在服务器端完成了PHP功能? 我问这个是因为我不知道它是否会影响我的表现。

示例:

<?php
  function really_long_loop() {
    $array = array();
    for ($i=1; $i < 1000; $i++) {
      array_push($array, $i);
    } 
    return $array;
  }


  function FirstFunction() {
    $get_loop = really_long_loop();
  }

  function SecondFunction() {
    $get_loop = really_long_loop();
  }
?>

在这个例子中,它是做两次长循环,还是仅进行一次?

1 个答案:

答案 0 :(得分:1)

现在让我们运行你的功能。在这种情况下,您将运行循环两次。当然,这是有意的。

<?php
 FirstFunction();
 SecondFunction();
?>

您可以将函数返回到变量,然后变量将保存该值,并且当您调用此变量时,循环将不会再次执行。

如果您在页面的两个位置需要循环中的相同值,则可以执行以下操作:

<?php
    $loopResult = really_long_loop();

?>

您的$loopResult变量将保留其余代码执行的值,但在函数内部除外,您需要将此变量作为参数传递。

当您拨打$foo = $loopResult时,循环功能不会再次运行。