Re: Function returning but continues execution

From: Date: Mon, 22 Jan 2007 16:51:21 +0000
Subject: Re: Function returning but continues execution
References: 1 2 3 4 5 6  Groups: php.general 
Request: Send a blank email to php-general+get-247555@lists.php.net to get a copy of this message
I added this in and it outputs 1 as I suspected - the function is being called only once. David Robert Cummings wrote:
On Mon, 2007-01-22 at 16:36 +0000, David Mytton wrote:
Yes, I know it looks like a bug in my code because I'm not able to write a test case that can reproduce it simply enough to report as a bug - hence why I am posting here. However, the behaviour I am describing surely suggests some kind of issue somewhere in PHP itself. My reasoning for this is if I echo the 2 variables I get: Array ( [0] => 3 ) and 3 and the bug appears. But if I set them manually before the in_array test: $_SESSION['user']['friends'] = array(0 => 3); $friend['user_id'] = 3; it works as expected. Am I wrong in thinking that this has to be a bug in PHP? I have used debug_backtrace() to find out what is going on as regards how many times the function is being executed - that is the first thing I checked because it does indeed suggest that it is being executed multiple times, however, the back trace only reveals 1 call/execution.
A backtrace won't indicate multiple calls unless they are recursive. Try add the following to your function: <?php static $foo = 0; $foo++; echo "I've been called $foo times\n"; ?> Cheers, Rob.


« previous php.general (#247555) next »