導航:首頁 > 編程語言 > php刪除文件行

php刪除文件行

發布時間:2022-09-19 07:17:31

php 如何從TXT文件中刪除指定的一行

是的,沒有函數直接刪除文件中的行,修改文件(刪除、增加)標準的辦法都是新建立文件,逐行進行拷貝,在拷貝中遇到需要修改的就進行修改,那麼滿足你的功能的標准代碼是:

刪除第二行:
$f1=fopen('fff.txt','r');
$tmp=tempnam();//建立臨時文件
$f2=fopen($tmp,'w');
$line_no=1;//行號
while(!feof($f1)){
$line=fgets($f1);
if ($line_no!=2) fputs($f2,$line);
$line_no++;
}
fclose($f1);
fclose($f2);
rename($tmp,'fff.txt');

刪除內容為「user2」的行:
$f1=fopen('fff.txt','r');
$tmp=tempnam();//建立臨時文件
$f2=fopen($tmp,'w');
while(!feof($f1)){
$line=fgets($f1);
if ($line!='user2') fputs($f2,$line);
}
fclose($f1);
fclose($f2);
rename($tmp,'fff.txt');

補充:這點舉一反三都做不到呀,如果是我的學生我不會來做這個補充的~
$f1=fopen('fff.txt','r');
$tmp=tempnam();//建立臨時文件
$f2=fopen($tmp,'w');
while(!feof($f1)){
$line=fgets($f1);
list($u,$p)=explode(':',$line);
if ($u!='user2') fputs($f2,$line);
}
fclose($f1);
fclose($f2);
rename($tmp,'fff.txt');

❷ PHP怎麼刪除某目錄下指定的一個文件

刪除文件可以使用unlink,沒有必要將目錄轉換成絕對路徑,如果想刪除images中的文件,可以直接unlink("/image/文件名")即可~!

❸ php能不能直接刪除excel文件里的指定行

你可以試一試 phpexcel的處理類 他們貌似有解決方法 去下載一個源碼看一下就行。。還有 如果可以的話 推薦用csv 不用excel 用csv就算都讀出來 處理 刪掉 再寫入 速度也很快

❹ 如何去掉PHP文件頭的空白行

你是怎麼清除的呢,一般用編輯器 選擇 另存為,然後選擇不+bom的utf8編碼就可以了,或者你重新把你的重新讀取一次,過濾掉開頭非字元的空行。

❺ php刪除txt文檔第一行,然後保存。此txt可能上百萬行

你的txt可能有百萬行的話,此方法肯定不好用,很容易內存溢出

命令行是最好的辦法:
exec('sed -i '1d' test.txt');

❻ PHP刪除TXT文本內容

那就很好改了。

<?php
$filename="aaa.txt";//定義操作文件
$dellinekey='13800';//要刪除的行關鍵字
$delcount=0;//已刪除的行數
$farray=file($filename);//讀取文件數據到數組中
for($i=0;$i<count($farray);$i++)
{
if($delcount==0&&substr_count($farray[$i],$dellinekey)>0)//先判斷是否已刪除一次,再判斷當前行是否包含關鍵字,是則刪除
{
$delcount++;//標記刪除一次
continue;
}
if(trim($farray[$i])<>"")//刪除文件中的所有空行
{
$newfp.=$farray[$i];//重新整理後的數據
}
}
$fp=@fopen($filename,"w");//以寫的方式打開文件
@fputs($fp,$newfp);
@fclose($fp);
?>

❼ php逐行讀取文件,逐行修改文件,刪除指定行

修改和刪除指定行,我們一般用file將文件內容讀取到數組中,根據數字索引比較容易修改,但是你要求用文件指針,這個比較麻煩,不管你用的是filesystem的函數還是spl類函數,都不可避免一個問題,對一個文件流操作,最多替換流中間的某一段內容,不可能實現插入,又不是c語言的鏈表,

//修改第二行內容
$f=fopen('test.txt','r+');
$i=1;
while(!feof($f)){
if($i==2){
fseek($f,0,SEEK_CUR);
fwrite($f,'aad');//這里的修改是替換形式,如果修改後這一行的長度比原來短,那麼可以用空格填充到原來長度,這樣實現修改,而且不影響後面的內容,但是修改後的比原來長就麻煩了,
break;
}
fgets($f);
$i++;
}
fclose($f);
//刪除行同修改行一樣,只不過是將原來行替換為同等長度的空格串
$f=fopen('test.txt','r+');
$j=1;
while(!feof($f)){
if($j==2){
$row=fgets($f);
$len=strlen($row);
echoftell($f)-$len."<br>";
fseek($f,ftell($f)-$len);
fwrite($f,str_pad('',$len,''));
break;
}
fgets($f);
$j++;
}
fclose($f);

❽ php怎麼刪除文件夾和文件夾下的所有文件

正常的思路來說,先循環刪除文件夾下的所有文件,當沒有文件時再刪除文件夾,如果你要刪除文件夾和所有文件直接本地刪除就好了,但是一般沒有這種操作。刪除文件可以用unlink($filepath)函數,$filepath是文件路徑,然後還有一個封裝函數rm_empty_dir($path)刪除所有空目錄:
/** 刪除所有空目錄
* @param String $path 目錄路徑
*/
function rm_empty_dir($path){
if(is_dir($path) && ($handle = opendir($path))!==false){
while(($file=readdir($handle))!==false){// 遍歷文件夾
if($file!='.' && $file!='..'){
$curfile = $path.'/'.$file;// 當前目錄
if(is_dir($curfile)){// 目錄
rm_empty_dir($curfile);// 如果是目錄則繼續遍歷
if(count(scandir($curfile))==2){//目錄為空,=2是因為.和..存在
rmdir($curfile);// 刪除空目錄
}
}
}
}
closedir($handle);
}
}
具體的還要你自己稍加修改,希望可以幫到你。

❾ php查找並刪除txt文件一行

一共要有三份代碼


test1.php 輸入的頁面

<htmlxmlns="http://www.w3.org/1999/xhtml"xml:lang="en"lang="en">
<head>

<title>Testdelete</title>


<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>


</head>

<body>
<formname='fromTxt'action='test2.php'method='post'class="smart-green">
<span>Delete:</span></br></br>
<inputtype="text"name="ip_del"maxlength="50"style="height:20px;width:200px"onchange="Value()">
<inputtype='submit'name='submit'class="button"value="Delete"/>


</form>
</body>
</html>

test2.php 處理數據的後台

<?php
$DELETE=$_POST['ip_del'];/*之前輸入的值的name*/

$data=file("ttt.txt");/*txt文件名*/

$out=array();

foreach($dataas$line){
if(trim($line)!=$DELETE){
$out[]=$line;
}
if(trim($line)==$DELETE){
echo"<script>alert('Existe')</script>";
}

}
If($data==$out){
echo"<script>alert('NotExiste')</script>";

}

$fp=fopen("ttt.txt","w+");
flock($fp,LOCK_EX);
foreach($outas$line){
fwrite($fp,$line);
}
flock($fp,LOCK_UN);
fclose($fp);
echo"<script>location.href='test1.php';</script>";/*返回主頁面*/
?>

ttt.txt 存儲信息文本文檔

❿ 用PHP如何刪除指定的文件

php中刪除文件有一個系統函數:
unlink ( string $filename );
參數$filename 表示文件的路徑,可以是相對路徑也可以是絕對路徑。
列如,當前目錄下有個文件:test.html
可以執行 unlink ( 'test.html' );來刪除
另外刪除目錄用函數:rmdir();用法與unlink ()相同

閱讀全文

與php刪除文件行相關的資料

熱點內容
安卓如何查看異常重啟 瀏覽:715
解壓音樂排名 瀏覽:383
安卓手機瀏覽器怎麼掃二維碼 瀏覽:715
通達信成本均線源碼 瀏覽:614
可以下載的解壓音頻 瀏覽:564
海賊王怎麼換伺服器 瀏覽:318
計算機上的共享文件夾映射 瀏覽:940
榮耀安裝包在文件夾哪裡 瀏覽:195
機票php源碼 瀏覽:231
linux共享mac 瀏覽:923
中國沒有國外的伺服器地址 瀏覽:759
為什麼退款伺服器連接錯誤 瀏覽:557
android簡訊存儲位置 瀏覽:972
unix網路編程卷4 瀏覽:808
找靚機app下單什麼時候發貨 瀏覽:413
android一個應用兩個進程 瀏覽:803
linux硬碟復制 瀏覽:808
php圖片伺服器搭建 瀏覽:801
下載壓縮文件怎麼打開 瀏覽:194
新建文件夾叫什麼名字 瀏覽:567