删除目录、列出目录下所有文件
<?php
/**
desc:删除目录
link:www.
date:2013/2/24
*/
function destroyDir($dir, $virtual = false)
{
$ds = DIRECTORY_SEPARATOR;
$dir = $virtual ? realpath($dir) : $dir;
$dir = substr($dir, -1) == $ds ? substr($dir, 0, -1) : $dir;
if (is_dir($dir) && $handle = opendir($dir))
{
while ($file = readdir($handle))
{
if ($file == '.' || $file == '..')
{
continue;
}
elseif (is_dir($dir.$ds.$file))
{
destroyDir($dir.$ds.$file);
}
else
{
unlink($dir.$ds.$file);
}
}
closedir($handle);
rmdir($dir);
return true;
}
else
{
return false;
}
}
/**
desc:列出某目录下的所有文件
link:www.
date:2013/2/24
*/
function list_files($dir)
{
if(is_dir($dir))
{
if($handle = opendir($dir))
{
while(($file = readdir($handle)) !== false)
{
if($file != "." && $file != ".." && $file != "Thumbs.db")
{
echo '<a target="_blank" href="'.$dir.$file.'">'.$file.'</a><br>'."n";
}
}
closedir($handle);
}
}
}
php递归删除文件与目录的代码,竟然也成了一个小类,真是有点夸张了,不过对于初学php的朋友,倒是可以参考下其递归删除文件的思想。
<?php
/**
* 递归删除文件与目录
* date:2013/2/24
*/
class Files{
public $dir ='xxx_com/';
function deldir($this->dir)
{
if(is_dir($dir))
{
$rdir = $dir;
if($dirlist = scandir($rdir))
{
array_shift($dirlist);
array_shift($dirlist);
foreach($dirlist as $d){
$rd = $rdir.'/'.$d;
if(isset()($d) && is_file($rd)){
unlink($rd);
}else{
$this->deldir($rd);
}
}
rmdir($rdir);
}else{
return false;
}
}
return true;
}
}
//调用
$files = new Files();
$delete = $files->deldir();
<title>简单文件上传</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"></HEAD>
<BODY>
<?
/**
desc:php文件上传
link:www.
date:2013/2/24
*/
$UploadedFile=$_FILES['UploadedFile']['tmp_name'];
$UploadedFile_name=$_FILES['UploadedFile']['name'];
$isTrue=false;
if($UploadedFile)
{
$store_dir=$_SERVER['DOCUMENT_ROOT'];
$accept_overwrite = 1;
$isTrue=true;
}
$fileName = date("YmtHis").$UploadedFile_name;
if (file_exists($store_dir . $fileName))
{
echo "存在相同文件名的文件";
}
$mytype =array(".jpg",".gif",".png");
$filetype=substr($_FILES['UploadedFile']['name'],strrpos($_FILES['UploadedFile']['name'],"."));
$typecount=0;
if($isTrue)
{
for($i=0;$i<count($mytype);$i++)
{
if($filetype==$mytype[$i])
{
$typecount++;
}
}
if($typecount>0)
{
if($_FILES['UploadedFile']['size']<1048576)
{
$b=move_uploaded_file($UploadedFile,$store_dir.$fileName);
if($b)
{
echo "<HR>n";
echo "原文件信息:<br/>";
echo "名称:".$_FILES['UploadedFile']['name']."<BR>n";
echo "大小:".$_FILES['UploadedFile']['size']."<BR>n";
echo "类型:".$_FILES['UploadedFile']['type']."<BR>n";
echo "<HR>n";
echo "存入数据库教程的名称为:".$fileName;
echo "<HR>n";
}
}
else
{
echo "文件大小不准超过1兆.";
}
}
else
{
echo "不准上传次类型文件!";
}
}
?>
<FORM ENCTYPE="multipart/form-data" ACTION="/blog_article/</php echo $PHP_SELF /gt;.html" METHOD="post">
<INPUT NAME="UploadedFile" TYPE="file" size='15'>
<INPUT TYPE="submit" VALUE="上传文件">
</form>
</boyd>
</html>
您可能感兴趣的文章:
php 文件上传简单示例
php 文件上传简单实例
php 多文件上传的简单例子(入门)
php 多图片上传的简单例子(图文)
php普通表单多文件上传的代码
php实现文件上传的代码
一个php上传文件的函数