bretticus, I tried with your code. whichever code run first would be slower
So I decided to loop dostandard() and dochained() a few more times. After the first call the two styles actually run at exactly the same speed. I did it on my own machine, turned off all other running applications.
And I also tried making dothis() return false and the results is slightly faster, as expected, but the two still running at exactly same speed.
More over: only the first call, dostandard() or dochained() ran first made no difference, takes longer and all the rest are the same.
From what I understand, If you run the same script function more than once, it is translated into machine code on the first call and the code is reused without translating thereafter which is why the first call takes longer. And the results shows that dostandard() and dochained() are reusing each others machine code! I suspect that they are exactly the same thing in php language!
I am only guessing tho. Anyone has enough knowledge to answer this?