php案例 :显示目录信息

  • Post author:
  • Post category:php


作者:陈业贵 华为云享专家 51cto(专家博主 明日之星 TOP红人) 阿里云专家博主




前言



为什么输出文件夹里面的文件+文件夹时,会出现. …呢?

在这里插入图片描述

这是系统自带的两个特殊隐藏目录。一个.是指代当前目录本身,一个…指代上级目录。平时隐藏了而已。你遍历出来不想显示直接在判断条件里加如果目录等于.或者…就不输出,直接跳过就完了



代码:



index.php

<!DOCTYPE html>
<html lang="zh">
<head>
	<meta charset="UTF-8">
	<meta http-equiv="X-UA-Compatible" content="IE=edge">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>Document</title>
</head>
<body>
	<form method="post" action="check.php">
		<center>请输入目录路径</center>
		<input type='text' name='path' size='25'><br>
		<input type="submit" value='查看' >
	  </form>
</body>
</html>



check.php

<?php
 if($_POST['path']){
	$path_start = $_POST['path'];	//获取绝对路径
	$path = opendir($path_start);	//打开目录
	?>
 <center>目录信息如下表所示</center>
  <table border='0' cellspacing='0' cellpadding='0' width='450' align='center'>
	<tr align="left" bgcolor="#cccccc">
		<th>文件名</th><th>类型</th>
	</tr>
	<?php
		$str = '';
		while($file=readdir($path)){//readdir的意思是获取某个目录下的所有文件+文件夹(不包含下下级哈)
		$dir = $path_start."/".$file;			//获取完整的路径和文件名称
		$str .=  '<tr align=\'center\'>';            	
		$str .= '<td>'.$file.'</td>';                   	
        $str .= '<td>'.(filetype($dir)=='dir'?'文件夹':'文件').'</td>';//看这个是文件还是文件夹
        $str .= '</tr>';	
	}
	echo $str;
	?>
  </table>
  <?php
 }
 ?>



效果:

在这里插入图片描述



提交的是:

在这里插入图片描述



新建文件夹的目录结构是:

在这里插入图片描述



名字为1的文件夹里面还有文件呢:

在这里插入图片描述



版权声明:本文为qq_37805832原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。