php专区

 首页 > php专区 > PHP高级 > 文件上传 > php删除文件程序代码 - php文件操作

php删除文件程序代码 - php文件操作

分享到:
【字体:
导读:
          在php中要删除文件我们需要使用php提供的unlink()文件删除函数,下面我来给大家详细介绍利用unlink删除文件的方法,有需要的朋友可参考本教程...

php删除文件程序代码

在php中要删除文件我们需要使用php提供的unlink()文件删除函数,下面我来给大家详细介绍利用unlink删除文件的方法,有需要的朋友可参考本教程。

unlink(filename,context)

例代码如下:

  1. if (unlink($file_delete)) { 
  2. echo "The file was deleted successfully.""n"
  3. else { 
  4. echo "The specified file could not be deleted. Please try again.""n"

判断文件是否存在,代码如下:

  1. $myfile = "./test1.txt"
  2. if (file_exists($myfile)) { 
  3. $result=unlink ($myfile); 
  4. echo $result

批量删除文件,代码如下:

  1. function delFileUnderDir( $dirName="../Smarty/templates/templates_c" ) 
  2. if ( $handle = opendir( "$dirName" ) ) { 
  3.    while ( false !== ( $item = readdir( $handle ) ) ) { 
  4.    if ( $item != "." && $item != ".." ) { 
  5.    if ( is_dir"$dirName/$item" ) ) { 
  6.          delFileUnderDir( "$dirName/$item" ); 
  7.    } else { 
  8.    if( unlink( "$dirName/$item" ) )echo "成功删除文件: $dirName/$itemn"
  9.    } 
  10.    } 
  11.    } 
  12.    closedir$handle ); 
  13. }delDirAndFile( 'www.phpfensi.com'); 

删除目录下文件并指定那些不删除,代码如下:

  1. header("content-Type: text/html; charset=utf-8"); 
  2. //配置开始 
  3. $path=".";//在些设置所删除的目录.为当前目录 如:删除path目录,引号里请添path; 
  4. $guolv="del.php,install.php,path";//设置需要过滤的文件或文件夹用英文状态下,号分隔 
  5. //配置结束 
  6. if($_GET['action']=="del"){ 
  7.  $file= array_values_recursive(recurdir($path,$guolv)); 
  8.  foreach($file as $k => $v){ 
  9.   remove_directory($v); 
  10.  } 
  11. }else
  12.  echo "您的配置如下
     
  13.  要删除的目录为: 
  14.  "; 
  15.  if($path==".")echo "当前目录";else echo $path
  16.  echo "
    您要过滤的文件或文件夹有:"
    .$guolv."
     
  17.  如果确认过滤请'?action=del'>点击此处开始删除相应的目录及目录下的所有文件,如果配置不正确请到文件中修改 
  18.  "; 
  19.  
  20. //删除目录及文件 
  21. function remove_directory($dir) { 
  22.   foreach(glob($diras $fn) { 
  23.     echo " removing $fn
    n"
  24.   if (!is_writable($fn))@chmod($fn, 0777); 
  25.   if(is_dir($fn)){@rmdir($fn);}else{@unlink($fn);} 
  26.    } 
  27. //扫描目录 
  28. function recurdir($pathname,$guolv='del.php'
  29.  $result=array();$temp=array(); 
  30.  //检查目录是否有效和可读 
  31.  if(!is_dir($pathname) || !is_readable($pathname)) 
  32.  return null; 
  33.  //得到目录下的所有文件夹 
  34.  $allfiles=scandir($pathname); 
  35.  foreach($allfiles as $key => $filename
  36.  { 
  37.   //如果是“.”或者“..”的话则略过 
  38.   if(in_array($filename,array('.','..')))continue
  39.   if(count($guolv)>0){$lv=explode(",",$guolv);if(in_array($filename,$lv))continue;} 
  40.    
  41.   //得到文件完整名字 
  42.   $fullname =$pathname . "/" .$filename
  43.   //如果该文件是目录的话,递归调用recurdir 
  44.   $temp[]=$fullname
  45.   if(is_dir($fullname)){ 
  46.    $nowpath=explode("/",$fullname); 
  47.    if(count($guolv)>0){$lv=explode(",",$guolv);if(in_array($nowpath[count($nowpath)-1],$lv))continue;} 
  48.    $result[$filename] = recurdir($fullname);} 
  49.  }  
  50.  //最后把临时数组中的内容添加到结果数组,确保目录在前,文件在后 
  51.  foreach($temp as $f){ 
  52.   $result[]=$f
  53.  } 
  54.  return $result
  55. //获取所有文件 
  56. function array_values_recursive($ary
  57.    $lst = array(); 
  58.    foreacharray_keys($aryas $k ){ 
  59.   $v = $ary[$k]; 
  60.   if (is_array($v)) {$lst = array_merge$lst, array_values_recursive($v));}else{$lst[] = $v;} 
  61.    } 
  62.    return $lst
  63. ?> 
分享到:
php递归遍历之遍历文件夹下的所有文件和...
php递归遍历之遍历文件夹下的所有文件和子文件 下面我来给大家推荐一个网友写的php递归遍历之遍历文件夹下的所有文件和子文件实例代码,希望对各位朋友有所帮助,写一个函数,能够遍历一个文件夹下的所有文件和子文件夹,代码如下: $dirs='e:/pdf';   function FileShow($di...
PHP实现递归循环每一个目录程序 - php文...
PHP实现递归循环每一个目录程序 要遍历一个文件夹里面的所有目录,列出里面所有的文件,PHP本身自带的有一个readdir的函数,不过只能读取当前的目录,根据这个函数,我写了另外一个函数,用来实现我的需求,代码如下:
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……