PHP计算scandir循环中的子目录级别

时间:2016-01-31 20:06:24

标签: php foreach scandir

我得到了以下代码,它扫描目录并以下列格式输出文件和子文件夹:

file1.php
folder1
   file2.php
   folder2
       file3.php
file4.php

对于我的超链接,我需要引用具有级别数量的链接。例如:file1.php,folder1和file4.php都是级别号1. file2.php,folder2是级别2,file3.php是级别3.

关于如何使用循环计数器实现此目的的任何建议?

$directory = $_SERVER["DOCUMENT_ROOT"]."/files/";

function folderFleList($dir, $menu_class){
    $ffs = scandir($dir);
    echo "<ul class=\"".$menu_class."\">\n";
    foreach($ffs as $ff){
        if($ff != '.' && $ff != '..'){
            echo '<li class="menu-item"><a href="#" class="menu-link-level-1">'.$ff;
            if(is_dir($dir.'/'.$ff)) folderFleList($dir.'/'.$ff, "menu-sublist");
            echo '</a></li>';
        }
    }
    echo "</ul>\n";
}

folderFleList($directory, "menu-list");

1 个答案:

答案 0 :(得分:1)

只需在函数中添加一个额外的参数:

public partial class LoginView : BaseView<LoginViewModel>{
    public LoginView() : base("LoginView", null)
    {
    }

    public override void DidReceiveMemoryWarning()
    {
        base.DidReceiveMemoryWarning();             
    }

    partial void DoLogin(UIButton sender) {
        this.ViewModel.DoLogin();
    }

    public override void ViewDidLoad()
    {
        base.ViewDidLoad();

        NavigationController.NavigationBarHidden = true; 
    }     
}