dounei9043 2015-06-24 14:17
浏览 40
已采纳

PHP - foreach,使用方法返回值或变量[重复]

This question already has an answer here:

Using the following 2 examples:

foreach($this->fooBar() as $foo => $bar) {
     // do something 
}

versus

$fooBar = $this->fooBar();
foreach($fooBar as $foo => $bar) {
     // do something 
}

Are there any implications of using either over the other or should readability be the only consideration between the two?

</div>
  • 写回答

1条回答 默认 最新

  • douchen2595 2015-06-24 14:25
    关注

    It’s basically the same.

    In your first example, the result of $this->fooBar() is stored internally.

    The second example only makes sense if you also want to use $fooBar outside the foreach loop.

    To learn more about internals of PHP’s foreach and why you shouldn’t care too much about the difference between your examples (and similar other ones), have a look at the following article:

    https://nikic.github.io/2011/11/11/PHP-Internals-When-does-foreach-copy.html

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 怎样才能让鼠标沿着线条的中心线轨迹移动
  • ¥60 用visual studio编写程序,利用间接平差求解水准网
  • ¥15 Llama如何调用shell或者Python
  • ¥20 谁能帮我挨个解读这个php语言编的代码什么意思?
  • ¥15 win10权限管理,限制普通用户使用删除功能
  • ¥15 minnio内存占用过大,内存没被回收(Windows环境)
  • ¥65 抖音咸鱼付款链接转码支付宝
  • ¥15 ubuntu22.04上安装ursim-3.15.8.106339遇到的问题
  • ¥15 blast算法(相关搜索:数据库)
  • ¥15 请问有人会紧聚焦相关的matlab知识嘛?