0

次のコードを使用して、ディレクトリ (test と呼ばれる) 内のすべてのフォルダーと、それらのフォルダー内のすべてのファイルを一覧表示しています。

<?php
function listFolderFiles($dir){
$ffs = scandir($dir);
echo '<ol>';
foreach($ffs as $ff){
    if($ff != '.' && $ff != '..'){
        echo '<li class="title">'.$ff;
        if(is_dir($dir.'/'.$ff)) listFolderFiles($dir.'/'.$ff);
        echo '</li>';
    }
}
echo '</ol>';
}

listFolderFiles('test');

?>

これは問題なく動作しますが、これらのフォルダー内の各ファイルにリンクできるようにしたいと考えています。誰かが私にこれを行う方法を教えてもらえますか?

たとえば、サブディレクトリ「test 1」、「test 2」、および「test 3」を含む「test」というディレクトリがあります。それらのそれぞれに、ユーザーがクリックしてファイルを表示できるリンクにしたいファイルがいくつかあります。したがって、ユーザーがサイトにアクセスすると、次のように表示されます。

テスト 1: リンク 1 リンク 2

テスト 2: リンク 1 リンク 2

テスト 3: リンク 1 リンク 2

4

1 に答える 1

2

出力する LI タグ内に html A タグを追加するだけです。これらの行に沿った何かが機能するはずです:

<?php
function listFolderFiles($dir){
    $ffs = scandir($dir);
    echo '<ol>';
    foreach($ffs as $ff){
        if($ff != '.' && $ff != '..'){
            echo '<li class="title">';
            if(is_dir($dir.'/'.$ff)){
                echo $ff;
                listFolderFiles($dir.'/'.$ff);
            }else{
                echo '<a href="'.$dir.'/'.$ff.'">'.$ff.'</a>';
            }
            echo '</li>';
        }
    }
    echo '</ol>';
}


listFolderFiles('test');

?>
于 2013-04-08T10:29:48.763 に答える