我刚刚介入了php的东西,执行任何令人困惑的条款
我正在使用以下代码在当前路径上显示文件和目录:
function listFolderFiles($dir){
$ffs = scandir($dir);
echo '<ol>';
foreach($ffs as $ff){
if($ff != '.' && $ff != '..'){
echo '<li>'.$ff;
if(is_dir($dir.'/'.$ff)) listFolderFiles($dir.'/'.$ff); //METHOD To List Files In Directory
echo '</li>';
}
}
echo '</ol>';
}
我将其列为链接echo '<li><a href="">'.$ff.'</a>';
我希望能够获取点击目录的名称并输入它显示任何内容:
function List($DirectoryName){
if(is_dir($dir.'/'.$ff)) listFolderFiles($dir.'/'.$ff);
}
如何在
上单击目录后设法执行此操作并调用此函数答案 0 :(得分:0)
您有路径,因此只需url encode it并将其传递给查询字符串href='?dir=$folder'
检查它是否设置,然后使用它,否则默认设置。
<?php
function listFolderFiles($dir){
// validate or do nothing
if(is_dir($dir)){
$ffs = scandir($dir);
echo '<ol>';
foreach($ffs as $ff){
if($ff != '.' && $ff != '..'){
echo '<li>';
// conditionally echo link if directory, else just filename
if(is_dir($dir.'/'.$ff)){
$folder = rawurlencode("$dir/$ff");
echo "<a href='?dir=$folder'>$ff</a>";
// recurse
listFolderFiles($dir.'/'.$ff);
} else {
echo $ff;
}
echo '</li>';
}
}
echo '</ol>';
}
}
if(isset($_GET['dir'])){
$folder = $_GET['dir'];
} else {
$folder = __DIR__;
}
listFolderFiles($folder);