Joe Schaeffer wrote:
>> Joe,
>>
>> Here is a simplified recursive version of your above statement.
>>
>> <?php
>> $dir = '.';
>> function displayDir($dir='.') {
>> $show = FALSE;
>> $results = glob($dir.'/*');
>> foreach ( $results AS $entry ) {
>> if ( is_dir($entry) && !in_array($entry, array('.', '..')) ) {
>> $dirs[] = $entry;
>> $show = TRUE;
>> }
>> }
>> if ( $show ) {
>> echo '<ul>';
>> foreach ( $dirs AS $entry ) {
>> echo '<li>', basename($entry);
>> displayDir($entry);
>> echo '</li>';
>> }
>> echo '</ul>';
>> }
>> }
>> displayDir($dir);
>> ?>
>> Hope this helps
>> --
>> Jim Lucas
>
> Excellent, Jim. Thanks very much for your help.
>
> At the risk of straying too far from the original
> subject/call-for-help, is there a way to flag the *first* time the
> function runs through a <ul> creation? Though my design doesn't call
> for it now, I could see the value of styling the first level
> separately than the sub-directories.
>
> Again, thanks very much!
> --joe
>
I would say to do that with CSS, not building it into the output.
<style>
#navigation ul {
Top level UL
}
#navigation ul li {
Top level List Items
}
#navigation ul ul {
second/third/etc... ul inside the Top UL
}
#navigation ul ul li {
second/third/etc.. List Items
}
</style>
<?php
echo '<div id="navigation">';
displayDir('.');
echo '</div>';
?>
--
Jim Lucas
"Some men are born to greatness, some achieve greatness,
and some have greatness thrust upon them."
Twelfth Night, Act II, Scene V
by William Shakespeare
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php