『壹』 php怎麼刪除文件夾裡面單個圖片
php+mysql 刪除圖片在資料庫記錄的同時刪除圖片文件舉例說明:
<A href="?act='mypicdel&id=<?=$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 "<script>alert('有誤');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');
}
備註:一定要注意,先刪除圖片文件,在刪除資料庫記錄!
『貳』 Thinkphp刪除數據同時刪除對應圖片
thinkphp中刪除記錄同時刪除圖片文件的實現代碼:
1、定義刪除文件的方法:
/*
@pare return
#$url string
刪除文件
*/
function delfile($url)
{
if( file_exists($url) && is_file( $url ) )
{
if( unlink( $url ) )
{
return true;
}
else
{
return false;
}
}
else
{
return false;
}
}
2、刪除記錄的方法:
$cn = mysql_connect('127.0.0.1','root','root') or die('database connect fail');
mysql_select_db('test',$cn);
mysql_query("set names 'gbk'");
/*
創建資料庫教程
CREATE DATABASE `test` ;
創建數據表 test1
CREATE TABLE `test`.`test1` (
`id` INT( 4 ) NOT NULL AUTO_INCREMENT ,
`title` VARCHAR( 40 ) NULL DEFAULT '0',
`litpic` VARCHAR( 100 ) NULL DEFAULT '0',
PRIMARY KEY ( `id` )
) ENGINE = MYISAM
*/
$sql = "Select * from test1 ";
$query = mysql_query( $sql ) or die($sql);
if( mysql_num_rows( $query ) )
{
while( $rs = mysql_fetch_array( $query ) )
{
$sql = "Delete from test1 where id=".$rs['id'];
if( mysql_query( $sql ) )
{
if( defile( $rs['litpic'] ))
{
echo '刪除圖片文件失敗';
}
else
{
echo '記錄刪除成功,並且刪除了記錄與相對應的圖片或文件';
}
}
else
{
echo '記錄不存刪除數據與圖片失敗';
}
}
}
else
{
echo '沒有記錄';
}
調用時,先調用刪除數據的方法,然後再根據傳入的url刪除圖片。
『叄』 php刪除圖片文件代碼
如果在伺服器上就unlink($_SERVER['DOCUMENT_ROOT']./文件所在文件夾名/.文件名),本地可以unlink(文件所在文件夾名/.文件名)
『肆』 php刪除文件函數
PHP刪除文件的函數:unlink()
unlink是用來刪除文件的它也可以刪除指定文件了,此函數支持相對路徑刪除與絕對路徑刪除,但它不能刪除目錄哦,下面一起來看unlink() 函數的一些用法。
用法
nlink() 函數刪除文件。
若成功,則返回 true,失敗則返回 false。
語法
unlink(filename,context)
示例:
代碼如下 復制代碼
$tmpdata = $this->_agency_mod->find ( intval ( $value ) );
$img = $tmpdata [$value] ['agency_image'];
if(!empty($img)){
$img = '../data/agency/' . $img;
if (file_exists ( $img )) {
unlink ( $img );
}
}
首先找到該條目,查詢條目的內容,包括圖片鏈接地址。有了地址,我們根據這個圖片路徑,使用unlink函數刪除該圖片文件。注意:該圖片路徑的目錄要有可讀寫許可權。
php官方示例:
代碼如下 復制代碼
<?php
$fh = fopen('test.html', 'a');
fwrite($fh, '<h1>Hello world!</h1>');
fclose($fh);
unlink('test.html');
?>
w3school示例:
代碼如下 復制代碼
<?php
$file = "test.txt";
if (!unlink($file))
{
echo ("Error deleting $file");
}
else
{
echo ("Deleted $file");
}
?>
刪除中文名稱的文件失敗
Warning: unlink(user_logo/d4d84f383714d5f3.jpg) [function.unlink]: No such file or directory in
文件名是中文命名的;用is_file()檢測出是false。但是文件是存在的。不知道怎樣才能用unlink把這個文件刪除了。用include包含文件時,也無法讀取文件(文件不是空的)。
代碼如下 復制代碼
if(file_exists($fn)){//存在該文件
//todo 刪除
}
如果是中文可能有點問題
現在要解決的是is_file或unlink對文件名中有中文的文件的識別。只要能識別出來就可以刪除了。
應該是文件名編碼的問題,你可以試試unlink(iconv('gb2312','utf-8','新建文本文檔.txt'));
『伍』 php 選擇刪除一張圖片,怎麼把在同級文件夾裡面對應的圖片刪除掉(圖片的名字一樣),
/**
*
*刪除指定目錄中的所有目錄及文件(或者指定文件)
*可擴展增加一些選項(如是否刪除原目錄等)
*刪除文件敏感操作謹慎使用
*@param$dir目錄路徑
*@paramarray$file_type指定文件類型
*/
functiondelFile($dir,$file_type=''){
if(is_dir($dir)){
$files=scandir($dir);
//打開目錄//列出目錄中的所有文件並去掉.和..
foreach($filesas$filename){
if($filename!='.'&&$filename!='..'){
if(!is_dir($dir.'/'.$filename)){
if(empty($file_type)){
unlink($dir.'/'.$filename);
}else{
if(is_array($file_type)){
//正則匹配指定文件
if(preg_match($file_type[0],$filename)){
unlink($dir.'/'.$filename);
}
}else{
//指定包含某些字元串的文件
if(false!=stristr($filename,$file_type)){
unlink($dir.'/'.$filename);
}
}
}
}else{
delFile($dir.'/'.$filename);
rmdir($dir.'/'.$filename);
}
}
}
}else{
if(file_exists($dir))unlink($dir);
}
}
『陸』 在tp裡面怎麼使用unlink函數刪除上傳的圖片文件
使用unlink{321}函數刪除上傳的圖片步驟如下:
1、新建一個321.php,添加php的界定符(<?php?>)。注意申明PHP與瀏覽器交互的文件類型和編碼:
6、根據原始網頁代碼,判斷圖片刪除是否成功即可。
(6)php刪除文件袋圖片文件擴展閱讀:
關於函數unlink的解讀
1、頭文件:unistd.h(在WIN32系統中為windows.h)
2、函數功能:刪除一個文件的目錄項並減少它的鏈接數,若成功則返回0,否則返回-1,錯誤原因存於error。如果想通過調用這個函數來成功刪除文件,你就必須擁有這個文件的所屬目錄的寫和執行許可權。
3、注意事項:unlink函數會刪除參數pathname指定的文件。如果該文件名為最後連接點,但有其他進程打開了此文件,則在所有關於此文件的文件描述詞皆關閉後才會刪除。如果參數pathname為一符號連接,則此連接會被刪除。