php模拟服务器实现autoindex效果的方法
程序员文章站
2022-05-08 08:15:19
本文实例讲述了php模拟服务器实现autoindex效果的方法。分享给大家供大家参考。具体实现方法如下:
1.php代码如下:
复制代码 代码如下:...
本文实例讲述了php模拟服务器实现autoindex效果的方法。分享给大家供大家参考。具体实现方法如下:
1.php代码如下:
复制代码 代码如下:
<?php
//文件浏览程序
error_reporting(0);
$pwd = empty($_get['dir']) ? './' : $_get['dir'];
$pwd = realpath($pwd);
if(is_file($pwd)) {
highlight_file ($pwd);
exit;
}else
$it = new filesystemiterator($pwd);
?>
<html>
<head>
<title>pwd of <?php echo $pwd ?></title>
</head>
<body bgcolor="white">
<h1>pwd of <?php echo $pwd ?></h1><hr>
<pre><a href="?dir=<?php echo dirname($pwd)?>">../</a>
<?php
foreach ($it as $file){
if($file->isdir()) {
$filesize = '_';
$filename = $file->getfilename() . '/';
} elseif($file->isfile()) {
$filesize = $file->getsize();
$filename = $file->getfilename();
}
$date = date('y-m-d h:i',$file->getctime());
?><a href="?dir=<?php echo $file->getrealpath()?>"><?php echo $filename ?></a><?php echo str_pad($date, 60-strlen($filename),' ',str_pad_left)?><?php echo str_pad($filesize,30,' ',str_pad_left)?>
<?php }?></pre><hr>
</body>
</html>
//文件浏览程序
error_reporting(0);
$pwd = empty($_get['dir']) ? './' : $_get['dir'];
$pwd = realpath($pwd);
if(is_file($pwd)) {
highlight_file ($pwd);
exit;
}else
$it = new filesystemiterator($pwd);
?>
<html>
<head>
<title>pwd of <?php echo $pwd ?></title>
</head>
<body bgcolor="white">
<h1>pwd of <?php echo $pwd ?></h1><hr>
<pre><a href="?dir=<?php echo dirname($pwd)?>">../</a>
<?php
foreach ($it as $file){
if($file->isdir()) {
$filesize = '_';
$filename = $file->getfilename() . '/';
} elseif($file->isfile()) {
$filesize = $file->getsize();
$filename = $file->getfilename();
}
$date = date('y-m-d h:i',$file->getctime());
?><a href="?dir=<?php echo $file->getrealpath()?>"><?php echo $filename ?></a><?php echo str_pad($date, 60-strlen($filename),' ',str_pad_left)?><?php echo str_pad($filesize,30,' ',str_pad_left)?>
<?php }?></pre><hr>
</body>
</html>
2. 运行效果如下图所示:
希望本文所述对大家的php程序设计有所帮助。