Reply to Re: [PHP] Can I install versions of PHP/MySQL that will be compatible with my host server?

Your name:

Reply:


Posted by Jochem Maas on 09/19/05 17:32

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().
>
>
>
>
>

[Back to original message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация