|
Posted by Al on 10/19/78 11:34
What I said was that arrays can be handled two different ways for loops.
1] By assigning the variable prior to the loop [i.e., $new_array= array();]
2] Or, by using inside the loop: $new_array[]= $value
Either one works. I've found, when the loop has lots of fancy stuff involving the $new_array, it is useful to go ahead
a assign it before starting the loop.
Kilbride, James wrote:
> <?php
>
> $old_array= array('one','two','three','four');
> $new_array= array();
>
> foreach($old_array as $value){
>
> $new_array= $value;
> }
> echo "$new_array";
> ?>
>
> The result of the echo is "four". Doing the same above with the [] after
> new_array returns the right result, a new array.(outputs Array). So what
> exactly where you saying 'Taint so' Al? I'm confused since Jochem's
> email about how to properly copy an array seems correct.
>
> James Kilbride
>
>
>>-----Original Message-----
>>From: Al [mailto:news@ridersite.org]
>>Sent: Wednesday, December 14, 2005 10:47 AM
>>To: php-general@lists.php.net
>>Subject: Re: [PHP] Re: Declaring arrays? Good practice?
>>
>>Jochem Maas wrote:
>>
>>>Al wrote:
>>>
>>>
>>>>However....
>>>>
>>>>For loops:
>>>>
>>>>$new_array= array();
>>>>
>>>>foreach($old array as $value){
>>>>
>>>> $new_array= $value:
>>>>}
>>>>
>>>>Otherwise, all you'll get it the last assignment of
>>
>>$new_array as a
>>
>>>>variable, not an array.
>>>
>>>
>>>which is exactly what you get if yuou run the code above -
>>
>>after the
>>
>>>foreach loop $new_array will be set to the value of the
>>
>>last item of
>>
>>>$old_array.
>>>
>>>regardless of whether you init the var you still have to use the
>>>square-bracket notation to add items to the array.
>>>
>>>
>>>>You can also use;
>>>>
>>>>foreach($old array as $value){
>>>>
>>>> $new_array[]= $value:
>>>>}
>>>>
>>>>But sometimes, if the expression is a bit fancy in the
>>
>>loop and you
>>
>>>>are using $keys, it is easy to make a mistake.
>>>>
>>>>Al..........
>>>>
>>>>Michael Hulse wrote:
>>>>
>>>>
>>>>>Sorry if this question sounds noobish:
>>>>>
>>>>>$foo = array(); // Declare first, good practice.
>>>>>$foo = array('one', 'two', 'three');
>>>>>
>>>>>Using above as example, is it good to always declare the
>>
>>array first?
>>
>>>>>I usually/always declare my arrays first, but sometimes I
>>
>>get a bit
>>
>>>>>confused... for example:
>>>>>
>>>>>function give_foo() {
>>>>> $the_foo = array(); // Declare first, good practice.
>>>>> $the_foo = array('one', 'two', 'three');
>>>>> // Do some stuff here...
>>>>> return $the_foo;
>>>>>}
>>>>>$foo = give_foo(); // Declare $foo also?
>>>>>
>>>>>So, should I declare $foo as array and then give it the
>>
>>value of the
>>
>>>>>function? Example:
>>>>>
>>>>>$foo = array(); // Declare first, good practice.
>>>>>$foo = give_foo();
>>>>>
>>>>>That seems kinda redundant. Thoughts?
>>>>>
>>>>>Sorry if this is a stupid question... I am self-taught, and I am
>>>>>trying to shake all my bad coding habits.
>>>>
>>>>
>>>>
>>Taint so Jochem. Try it.
>>
>>--
>>PHP General Mailing List (http://www.php.net/) To
>>unsubscribe, visit: http://www.php.net/unsub.php
>>
>>
Navigation:
[Reply to this message]
|