Re: Array - partical path to the array's path....

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



:-)

"Mike Dunlop" <miked@xxxxxxxxx> wrote in message
news:D2C59439-01E0-4153-B5AD-28CFC97D8C19@xxxxxxxxxxxx
> My bad - that doesn't work - that came off the top off my head. It
> sure did look sexy though, no ?
>
>   - MD
>
>
> >> echo ${"array".$prefix};
> >>
> >
> > really? did you test that?
> > doesn't work when I do it (the second expression does
> > - but doesn't answer the OPs question actually imho the
> > answer is not eval() either, because its slow and a security
> > headache):
> >
> >
> > $array = array();
> > $array["col3"]["col2"] = "Test #2";
> > $prefix = "[\"col3\"][\"col2\"]";
> > echo ${"array".$prefix}, ${"array"}["col3"]["col2"];
> >
> >
> >
> > -----------------------------
> > try something like this instead?:
> > (code has been tested)
> >
> > function getVal($arr, $path)
> > {
> >     $retval = null;
> >
> >     if (!is_array($arr) || empty($arr) ||
> >         !is_array($path) || empty($path)) {
> >         return null;
> >     }
> >
> >     while (count($path)) {
> >         $key = array_shift($path);
> >         if (!isset($arr[ $key ])) {
> >             return null;
> >         }
> >         $retval = $arr[ $key ];
> >         $arr    =& $arr[ $key ];
> >     }
> >
> >     return $retval;
> > }
> > $ra = array();
> > $ra["col3"]["col2"] = "Test #2";
> > $path = array("col3","col2");
> > echo getVal($ra, $path);
> >
> >
> >
>
>

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux