VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > PHP >
  • php中文件删除函数unlink用法

unlink是用来删除文件的它也可以删除指定文件了,此函数支持相对路径删除与绝对路径删除,但它不能删除目录,下面一起来看unlink() 函数的一些用法.

用法:nlink() 函数删除文件.

若成功,则返回 true,失败则返回 false.

语法:unlink(filename,context)

php示例,代码如下:

  1. $tmpdata = $this->_agency_mod->find ( intval ( $value ) ); 
  2. $img = $tmpdata [$value] ['agency_image']; 
  3. if(!emptyempty($img)){ 
  4.  $img = '../data/agency/' . $img
  5.  if (file_exists ( $img )) { 
  6.   unlink ( $img ); 
  7.  } 

首先找到该条目,查询条目的内容,包括图片链接地址,有了地址,我们根据这个图片路径,使用unlink函数删除该图片文件,注意,该图片路径的目录要有可读写权限.

php官方示例,代码如下:

  1. <?php 
  2. $fh = fopen('test.html''a'); 
  3. fwrite($fh'<h1>Hello world!</h1>'); 
  4. fclose($fh); 
  5. //开源代码phpfensi.com 
  6. unlink('test.html'); 
  7. ?> 

w3school示例,代码如下:

  1. <?php 
  2. $file = "test.txt"
  3. if (!unlink($file)) 
  4.   { 
  5.   echo ("Error deleting $file"); 
  6.   } 
  7. else 
  8.   { 
  9.   echo ("Deleted $file"); 
  10.   } 
  11. ?> 

删除中文名称的文件失败.

Warning: unlink(user_logo/d4d84f383714d5f3.jpg) [function.unlink]: No such file or directory in

文件名是中文命名的;用is_file()检测出是false,但是文件是存在的,不知道怎样才能用unlink把这个文件删除了,用include包含文件时,也无法读取文件,文件不是空的,代码如下:

  1. if(file_exists($fn)){//存在该文件 
  2.  
  3.  //todo 删除 
  4.  

如果是中文可能有点问题,现在要解决的是is_file或unlink对文件名中有中文的文件的识别,只要能识别出来就可以删除了.

应该是文件名编码的问题,你可以试试unlink(iconv('gb2312','utf-8','新建文本文档.txt'));

出处:http://www.phpfensi.com/php/20140912/5492.html

 


相关教程