This might be interesting ...

The function extract() allows you to extract all values from an array 
and prefix them with a specified string. What I didn't know until 
just a second ago was that you can supply a function as a string, so 
...

$my_array = array("a","b","c","d",array("a","b","c","d"));

$i = 1;

extract($my_array,EXTR_PREFIX_ALL,"SOMEVAL".$i++);

print "<pre>";

print $SOMEVAL_1;
print $SOMEVAL_2;
print $SOMEVAL_3;
print $SOMEVAL_4;
print $SOMEVAL_5;

print "</pre>";

... will produce:

a
b
c
d
[Array]

Which is cool. Not quite what you wanted, but maybe you could run with it.

Jim



>
>-----Original Message-----
>From: Darren Gamble [mailto:[EMAIL PROTECTED]]
>Sent: Tuesday, December 04, 2001 10:37 AM
>To: PHP List
>Subject: [PHP] Multidimensional array construction
>
>
>Here's a question for the list:
>
>I have a two-dimensional array; essentially a list of arrays.  Each element
>(an array) can have any number of elements.  As a small example:
>
>(
>   ( "foo" , "bar" , "red" , "apple" ),
>   ( "foo" , "bar" , "red" , "car"),
>   ( "foo" , "green" )
>)
>
>I would like to traverse this array and place all of the data into another
>multidimensional array.  The following statements illustrate how I'd like to
>do this from the example:
>
>$myarray["foo"]["bar"]["red"]["apple"] = $some_value1;
>$myarray["foo"]["bar"]["red"]["car"]   = $some_value2;
>$myarray["foo"]["green"]               = $some_value3;
>
>Is there any way to easily do this in PHP?  I could "cheat" and use eval(),
>but there is probably a better way.  I have thought of using each() or
>references, but nothing has come to mind so far.
>
>Any ideas?  Should I just use eval() ?
>
>============================
>Darren Gamble
>Planner, Regional Services
>Shaw Cablesystems GP
>630 - 3rd Avenue SW
>Calgary, Alberta, Canada
>T2P 4L4
>(403) 781-4948
>
>--
>PHP General Mailing List (http://www.php.net/)
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
>To contact the list administrators, e-mail: [EMAIL PROTECTED]


-- 
Jim Musil
---------
Multimedia Programmer
Nettmedia
-------------
212-629-0004
[EMAIL PROTECTED]

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to