View Single Post
Old 06-27-2009, 03:57 PM   #2 (permalink)
Wildhoney
La Vida es Sueño
Advanced Programmer Top Contributor 
 
Wildhoney's Avatar
 
Join Date: Sep 2007
Location: Oldham
Posts: 2,215
Thanks: 90
Wildhoney is on a distinguished road
Default

Well, you could do that, but those functions: end, reset, prev, next, all modify the position of the internal pointer.

For instance:

php Code:
$aFruit = array('Orange', 'Apple', 'Pear');
$szLast = end($aFruit);
echo current($aFruit);

Whilst we do have the last child there in our variable, the current function shows us that the internal pointer has been moved to the last element.

Please take a look at my article on an internal pointers here: http://www.talkphp.com/vbarticles.ph...ents-in-arrays

So, how to get the last child without modifying the internal pointer? Well, we could do the following, which would work in a similar way to Python's:

php Code:
$aFruit = array('Orange', 'Apple', 'Pear');
$szLast = $aFruit[count($aFruit) - 1];
echo $szLast;

The minus one (-1) being necessary because count doesn't start at zero, whereas array keys do.
__________________
The man who comes back through the Door in the Wall will never be quite the same as the man who went out.
Send a message via AIM to Wildhoney Send a message via MSN to Wildhoney Send a message via Yahoo to Wildhoney
Wildhoney is offline  
Reply With Quote