這篇文章運(yùn)用簡(jiǎn)單易懂的例子給大家介紹如何刪除php中文件的任意一行?,代碼非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
在永定等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作按需網(wǎng)站策劃,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,全網(wǎng)營(yíng)銷推廣,外貿(mào)網(wǎng)站建設(shè),永定網(wǎng)站建設(shè)費(fèi)用合理。
php刪除文件中任意一行的方法:首先將文件逐行讀入數(shù)組;然后遍歷數(shù)組并把數(shù)組各元素的值添加到要保存的字符串中;接著當(dāng)處理到對(duì)應(yīng)于要?jiǎng)h除的行的數(shù)組元素時(shí)不讀入它;最后保存文件即可。
php刪除文件中任意一行的方法:
實(shí)現(xiàn)思路:
將文件逐行讀入數(shù)組,然后遍歷數(shù)組并把數(shù)組各元素的值添加到要保存的字符串中,當(dāng)處理到對(duì)應(yīng)于要?jiǎng)h除的行的數(shù)組元素時(shí)不讀入它,最后保存文件。
實(shí)現(xiàn)方法:
$num=2; //要?jiǎng)h除的行序號(hào) $fp=file("test.txt"); $total=count($fp); //取得文件總行數(shù) foreach ($fp as $line) { //按行分解內(nèi)容并 $tmp[]=$line; //逐行寫入數(shù)組 } for($i=0;$i<$total;$i++){ //若$i的值不等于要?jiǎng)h除的行序號(hào) if($i<>$num) $savestr.=$tmp[$i]; } //寫入文件 $fp=fopen("test.txt","w"); fwrite($fp,$savestr); fclose($fp);
執(zhí)行以上PHP程序,它將刪除test.txt
文件的第三行。文件的行序列號(hào)從0算起,而不是我們通常所理解的從1算起,這與數(shù)組元素的下標(biāo)序號(hào)是一樣的情形。
有一個(gè)問題需要弄清楚,就是所謂的“行”的概念。讓我們用記事本寫一個(gè)文件,一行結(jié)束后我們打一個(gè)回車或者不打,保存該文件后該文件就有了一行;如果我們打完一行后回車再打一行,保存后文件就有兩行。
在記事本里,當(dāng)我們?cè)O(shè)置格式為“自動(dòng)換行”,一行文字寫到最右端時(shí)會(huì)自動(dòng)折行,但那不是兩行,它依然只是一行。在記事本里,不論有多少文字,也不論格式是否為“自動(dòng)換行”,如果一直沒有回車符,那么就只能是一行。換句話說,行的標(biāo)志是回車符(PHP記作“"\r\n"”)。
修改以上程序,我們還可以輕易地刪除文件里所有空的行(只有空格+回車符或只有回車符的行):在遍歷數(shù)組并讀入保存字串時(shí)用trim
檢測(cè)每一個(gè)數(shù)組元素
for($i=0;$i<$total;$i++){ if(trim($tmp[$i])<>"") $savestr.=$tmp[$i]; }
這個(gè)程序?qū)h除文件中的所有空行,但假若文件的最后一行為空行,則會(huì)清除其空格符(如果有的話)然后保留一個(gè)回車符(它被當(dāng)作文件末尾的指針標(biāo)志)。
關(guān)于如何刪除php中文件的任意一行?就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。