|
Posted by Jordan Miller on 09/19/05 17:41
That is very interesting, thank you. We cannot escape politics, eh?
Jordan
On Sep 19, 2005, at 9:32 AM, Jochem Maas wrote:
> Jordan Miller wrote:
>
>> On Sep 19, 2005, at 8:31 AM, Jochem Maas wrote:
>>
>>> e.g:
>>>
>>> $var = array_pop( explode('-', '1-2-3-4-5') );
>>>
>>> .. is bad code (read the manual page for array_pop very
>>> carefully) and would work
>>> in older versions but the engine has been tightened up to
>>> disallow such fauxpas.
>>>
>>>
>> Jochem,
>> Whoa... what do you mean by this, exactly? I am running PHP 5.0.4 and
>>
>
> what I meant an what I wrote apparently don't match up very well :-)
> I meant to give a valid example of when you can't pass the return
> value from
> a function to another function due to the fact that a reference is
> expected
> and in some situation the var you are passing is a reference to
> 'nothing' -
> which works in older version of php but is also the cause of a
> couple of
> weird/nasty & inexplicable potential seg faults ... it was fixed,
> Derick
> opened his mouth, alot of people got angry - personally I don't
> give a shit
> because I only use 5.0.x (I'll be waiting until the shitstorm has
> died down
> before trying out 5.0.5 or 5.1 :-)
>
> maybe this helps to explain (alot) better what I was talking about ...
> http://phplens.com/phpeverywhere/?q=node/view/214
>
> anyway thanks for the catch Jordan.
>
>
>> $var is correctly set with the code you give above. I could not
>> find anything like you describe in the array_pop manual (see
>> below). Please elaborate on why this is "bad" code.
>> Jordan
>> array_pop
>> (PHP 4, PHP 5)
>> array_pop -- Pop the element off the end of array
>> Description
>> mixed array_pop ( array &array )
>> array_pop() pops and returns the last value of the array,
>> shortening the array by one element. If array is empty (or is not
>> an array), NULL will be returned.
>> Note: This function will reset() the array pointer after use.
>> Example 1. array_pop() example
>> <?php
>> $stack = array("orange", "banana", "apple", "raspberry");
>> $fruit = array_pop($stack);
>> print_r($stack);
>> ?>
>> After this, $stack will have only 3 elements:
>> Array
>> (
>> [0] => orange
>> [1] => banana
>> [2] => apple
>> )
>> and raspberry will be assigned to $fruit.
>> See also array_push(), array_shift(), and array_unshift().
>>
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
>
>
Navigation:
[Reply to this message]
|