十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
unlink()
目前创新互联已为近1000家的企业提供了网站建设、域名、网站空间、成都网站托管、企业网站设计、天门网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
删除文件。
语法:
int
unlink(string
filename);
返回值:
整数
函数种类:
文件存取
内容说明
本函数删除文件
filename,用法像
unix
中
c
语言呼叫的同名函数
unlink()。当发生错误则返回
或
false。
参考
rmdir()
删除的前提是,你的php程序有对目录的写权限。
没有办法一次性的,你可以自己写一个函数,读取该目录下所有文件,然后循环删除文件,再删除目录。
--------------------------------------------------
代码举例:
php删除文件夹及其文件夹下所有文件
function
deldir($dir)
{
$dh=opendir($dir);
while
($file=readdir($dh))
{
if($file!="."
$file!="..")
{
$fullpath=$dir."/".$file;
if(!is_dir($fullpath))
{
unlink($fullpath);
}
else
{
deldir($fullpath);
}
}
}
closedir($dh);
if(rmdir($dir))
{
return
true;
}
else
{
return
false;
}
}
----------------------------------------
php删除指定文件和文件夹
?php
//删除指定目录(文件夹)中的所有文件函数
function
delfile($dir)
{
if
(is_dir($dir))
{
$dh=opendir($dir);//打开目录
//列出目录中的所有文件并去掉
.
和
..
while
(false
!==
(
$file
=
readdir
($dh)))
{
if($file!="."
$file!="..")
{
$fullpath=$dir."/".$file;
if(!is_dir($fullpath))
{
unlink($fullpath);//删除目录中的所有文件
}
else
{
delfile($fullpath);
}
}
closedir($dh);
}
}
//删除指定的目录
function
deldir(dir){
delfile(dir);
if
(is_dir($dir))
{
rmdir($dir);//目录必须是空的
}
}
?
现在,如果想删除d盘中的“我的相片”文件夹中的所有文件,就调用自定义函数delfile。
?php
$dir="d:/我的相片";
delfile($dir);
?
如果想删除d盘中的“我的相片”文件夹,调用自定义函数deldir。
?php
$dir="d:/我的相片";
deldir($dir);
?
?php
//在删除文件夹中文件时候如果删除整个文件夹必须是在文件夹中没有文件的情况下才可以删除此文件夹所以首先要检查文件夹中是否有文件,如果有文件先循环除文件个数及名称先删除然后才能删除此文件夹,要是只删除一个图片或一个文本文件那么就只用unlink()这个函数就可以解决了以下是说明希望能帮到你
//opendir('imag/a')返回所有在文件夹中的文件
//readdir($handle)返回文件名称得到文件名就可以删除了
$sql="select
*
from
product
where
id=1";
$r=mysql_query($sql);
$r['psmall'];//得到图片路径
mysql_query("delete
from
product
where
id=1");//删除商品
//如果要单独删除这个图片直接用unlink($r['psmall']);
//如果要把这件商品下关联的商品图片也删除用下面代码
$imgurl="upload";//或者是
如下
//$imgurl="upload/商品文件夹";//删除商品文件夹下所有商品图片
/*if
($handle
=
opendir($imgurl))
{
while
(false
!==
($file
=
readdir($handle)))
{
if
($file
!=
"."
$file
!=
"..")
{
echo
"$file
";
unlink($imgurl."/$file");
}
}
closedir($handle);
}*/
?
php+mysql 删除图片在数据库记录的同时删除图片文件举例说明:
A href="?act='mypicdelid=?=$row['id']?" style="color:#FF0000;" onClick="return confirm('确定要删除吗')"删除/A
if($act == 'mypicdel')
{
$id = !empty($_GET['id']) ? intval($_GET['id']) : '';
//$filename 为你的图片地址,是从数据库里读出的
$sql = "SELECT * FROM wkcx_user WHERE id=$id"; // 查询表,取得图片的完整地址
$res = $db-query($sql);
$row = $db-getarray($res);
$filename = $row['avatar']; //给图片地址赋一个变量,大图
$filesmallname = $row['small_img']; //缩略图
if(file_exists($filename) file_exists($filesmallname))
{ //检查图片文件是否存在
unlink($filename);
unlink($filesmallname);
}
else
{
goBakMsg("文件不存在或路径有误!"); //js弹出窗口,我的封装了!可修改为 echo "scriptalert('有误');window.go(-1)/script"
exit;
}
$sql = "UPDATE wkcx_user SET avatar='',small_img='' WHERE id='$id'"; //我这个是头像,所以修改为空,如果是图片,直接删除就可以了
$db-query($sql);
urlMsg('删除成功','my_photo.php'); //同上,我封装了,就是一个提示+跳转!
$sql = "DELETE FROM wkcx_user_pic WHERE id='$id'"; //图片的时候,直接删除图片记录!
$db-query($sql);
urlMsg('删除成功','my_photo.php');
}
备注:一定要注意,先删除图片文件,在删除数据库记录!
做简单的一个测试,写一个最简单的页面,只有一个按钮,图片路径写绝对路径,然后试试能不能删除;
可以,则将路径改为相对路径;再则将这部分功能放置于站点中调试