简体   繁体   English

为什么在XDebug / kcachegrind中显示的函数被调用两次?

[英]Why is the function shown in XDebug/kcachegrind as being called twice?

When the php snippet below is invoked, in kcachegrind, the function aaa is called twice, and function bbb 4 times. 调用下面的php代码段时,在kcachegrind中,函数aaa被调用两次,函数bbb被调用4次。

Can anyone explain why the function aaa gets called twice? 谁能解释为什么函数aaa被调用两次? Thanks. 谢谢。

<?php
echo "1111<br>\r\n"; 
aaa('Demo');

function aaa($p)
{
    echo 'current loop '.$p."<br>\r\n";
    for($j = 0; $j < 2; $j++){
        bbb($j);
    }
}

function bbb($p){
   echo 'bbb func loop: '.$p."<br>\r\n";
}
?>

您的数组中有四个元素,aaa函数内部的for循环仅执行3次,因此再次调用。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM