Brent, et al -- ...and then Brent Baisley said... % % I'm not sure how you are creating your array, but your resulting array
Well, here's some code with some commentary to perhaps help: - first we define a name for a picture basket; the default is 'default' (we might later get a new name from the user or replace an existing basket and save the collection) - we base64_encode the basket name (if it isn't already done) so that we can safely store it and use it as a key in the basket list - so we're ready to populate $pixbasket, an array of values (path to picture) and keys (base64_encoded version of the value, in fact, for the same sorts of reasons); we're given a base64_encoded path as the picture to put in the basket: if ( $fn == "add" || $fn == "rm" ) # are we adding or removing a pic? { ... $p = base64_decode($basketpic); # get the pic path ... case add: $pixbasket[$basketpic] = $p; break ; # add to basket ... } - when it's time to save the basket, we put the whole array (as a value) onto the basket list array: if ( $fn == "manage" ) # still? { ... if ( $basketsave && ( $newname || $target ) ) # what to do and how to do it? { if ( $newname ) { $basketname = base64_encode($newname) ; } # use this if we have it ... else { $basketname = $target ; } # ... or else use 'target' (already encoded) $basketlist[$basketname] = $pixbasket ; # put it in the array ... } - then we write the whole basket list array to a file and get it back some other day % would look something like this: % % Array % ( % [name1]=>namevalue1 % [a1]=>Array % ( % [k1]=>value1 % [k2]=>value2 % ) % [name2]=>namevalue2 % [a2]=>Array % (... Hmmm... % % You end up with a two dimensional array (avoiding the columns term) that % contains a name value and a values array for each entry. OK. I was able to construct this directly, but I don't see how to use it; if I ask for array_keys() for the outer array I'll get both types of keys and that would be a mess. I suppose I could have another array like $names = array ('name1', 'name2', 'name3') ; where I maintain the order (renaming 'name2' is as simple as $names[1] = 'newname' ; once I determine that I'm working with position 1) and then have my array of baskets, now simply by ID instead of like a hash, so $baskets = array (array(...),array(...),...) ; would work) and then wrap both of those into the single array for writing (like $basketlist = array($names,$baskets) ; or so), but that seems even more of a kludge :-) Given the array you present above, how would you extract a basket by name? The closest I can come is to go and find the name and then increment the ID by 1 and then get out that basket, which sounds like a *huge* mess... Thanks again & HAND :-D -- David T-G * There is too much animal courage in (play) [EMAIL PROTECTED] * society and not sufficient moral courage. (work) [EMAIL PROTECTED] -- Mary Baker Eddy, "Science and Health" http://justpickone.org/davidtg/ Shpx gur Pbzzhavpngvbaf Qrprapl Npg!
msg94162/pgp00000.pgp
Description: PGP signature