On 12-03-24 08:41 AM, Jay Blanchard wrote:
On Mar 23, 2012, at 11:24 PM, Robert Cummings wrote:
On 12-03-23 05:41 PM, Jay Blanchard wrote:
[-- DELETED GARBAGE --] :)
I just realized... I've been stuck in a thinking rut. I latched onto one solution that works well in some case but didn't fully examine the nuances of your own scenario. Given the way you are creating your hierarchy you will ultimately retrieve all rows. As such the following simple solution will do what you need:
<?php
$company = 1;
$query =
"SELECT DISTINCT "
." * "
."FROM "
." tiers "
."WHERE "
." company = {$company} ";
$root = array();
if( $db->query( $query ) )
{
while( ($row = $db->fetchRow()) )
{
$focus =&$root;
for( $i = 1; $i<= 14; $i++ )
{
$name = $row['tier'.$i];
if( !isset( $focus[$name] ) )
{
$focus[$name] = array();
}
$focus =&$focus[$name];
}
}
}
$json = JSON_encode( $root );
?>
The crux of it is:
$focus = &$focus[$name];
because it facilitates moving deeper and deeper into the array.
Cheers,
Rob.
--
E-Mail Disclaimer: Information contained in this message and any
attached documents is considered confidential and legally protected.
This message is intended solely for the addressee(s). Disclosure,
copying, and distribution are prohibited unless authorized.
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php