-
PHP 读取目录,删除
本文章提供一款php目录管理程序,他可以对目录下的文件,文件夹,等各种文件进行管理删除操作,可以支持无限级目录的管理,代码如下:
- <?php
- include("class.php");
- $path = $_get['path'];
- if($path == ""){
- $path = "dir";
- }else{
- if(!strstr($path,"dir")){
- $path = "dir/".$path;
- }else{
- $path = $path;
- }
- }
- $newdir = new dirver();
- $newdir -> setpath($path);
- $newdir -> dirdata();
- $files = $newdir -> getfiles();
- $dirs = $newdir -> getdirs();
- //print_r($files);
- //print_r($dirs);
- echo('<link href="style.css" rel="stylesheet" type="text/css" />');
- $max = 3;
- $j = 0;
- if(count($dirs) == 2){
- echo'<table width="800" border="0" cellpadding="5" cellspacing="5"><tr>';
- print("<td width='33%'><img src='type/dir.png'/>");
- print('<a href="test.php?path='.$path."/".$dirs[0].'">');
- print($dirs[0]);
- print('</a>');
- print("</td>");
- print("<td width='33%'><img src='type/dir.png'/>");
- print('<a href="test.php?path='.$path."/".$dirs[1].'">');
- print($dirs[1]);
- print('</a>');
- print("</td>");
- print("<td width='33%'>");
- print(" ");
- print("</td>");
- echo '</tr></table>';
- }else{
- echo'<table width="800" border="0" cellpadding="5" cellspacing="5"><tr>';
- while($j <= (count($dirs) -1)){
- print("<td ><img src='type/dir.png'/>");
- print('<a href="test.php?path='.$path."/".$dirs[$j].'">');
- print($dirs[$j]);
- print('</a>');
- print("</td>");
- if(($j + 1) % $max == 0){
- echo '</tr>';
- if(($j + 1) != count($dirs)){
- echo '<tr>';
- }
- }
- $j++;
- }
- echo '</tr></table>';
- }
- $i = 0;
- if(count($files) == 2){
- echo'<table width="800" border="0" cellpadding="5" cellspacing="5"><tr>';
- print("<td width='33%'><img src='type/".$newdir -> getfiletype($files[0]).".png'/> ");
- print($newdir -> change2line($files[0]));
- print("</td>");
- print("<td width='33%'><img src='type/".$newdir -> getfiletype($files[1]).".png'/> ");
- print($newdir -> change2line($files[1]));
- print("</td>");
- print("<td width='33%'>");
- print(" ");
- print("</td>");
- echo '</tr></table>';
- }else{
- echo'<table width="800" border="0" cellpadding="5" cellspacing="5"><tr>';
- while($i <= (count($files) -1)){
- print("<td width=100><img src='type/".$newdir -> getfiletype($files[$i]).".png'/> ");
- print($newdir -> change2line($files[$i]));
- print("</td>");//开源代码phpfensi.com
- if(($i + 1) % 3 == 0){
- echo '</tr>';
- if(($i + 1) != count($files)){
- echo '<tr>';
- }
- }
- $i++;
- }
- echo '</tr></table>';
- }
- ?>
class.php,代码如下:
- <?php
- class for php4.x
- class dirver{
- /class var/
- var $path;
- var $flies;
- var $dirs;
- /
- function dirver(){
- $this -> path = "";
- $this -> files = array();
- $this -> dirs = array();
- }
- function dirdata(){
- if(isset($this -> path)){
- $handle = dir($this -> path);
- while(false !== ($data = $handle -> read())){
- if(is_dir($this -> connectname($this -> path,$data)) && $data != "." && $data != ".."){
- $this -> dirs[] = $data;
- continue;
- }
- if($data != "." && $data != ".." && is_file($this -> connectname($this -> path,$data))){
- $this -> files[] = $data;
- continue;
- }
- }
- $handle -> close();
- }else{
- return false;
- }
- }
- function setpath($src){
- if($src != ""){
- $this -> path = $src;
- }else{
- return false;
- }
- }
- /
- function connectname($path,$name){
- return $path."/".$name;
- }
- /
- function change2line($name){
- $basename = explode(".",$name);
- $basename = $basename[0];
- $tmp = $this -> path."/".$name;
- $tmp = '<a href="'.$tmp.'" target="_blank">'.$basename.'</a>';
- return $tmp;
- }
- function getfiletype($file){
- if($file != ""){
- $tmp = explode(".",$file);
- $type = $tmp[count($tmp)-1];
- return $type;
- }
- }
- function getfiles(){
- return $this -> files;
- }
- function getdirs(){
- return $this -> dirs;
- }
- //
- }
- ?>
出处:http://www.phpfensi.com/php/20140909/5099.html
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式