国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > PHP > 正文

php操作文本文件刪除重復(fù)行

2020-03-22 18:35:47
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
本篇文章主要介紹php操作文本文件刪除重復(fù)行,感興趣的朋友參考下,希望對(duì)大家有所幫助。

本文實(shí)例講述了php刪除文本文件中重復(fù)行的方法。具體分析如下:

這個(gè)php函數(shù)用來(lái)刪除文件中的重復(fù)行,還可以指定是否忽略大小寫(xiě),和指定換行符

/** * RemoveDuplicatedLines * This function removes all duplicated lines of the given text file. * @param string * @param bool * @return stringfunction RemoveDuplicatedLines($Filepath, $IgnoreCase=false, $NewLine= /n ){ if (!file_exists($Filepath)){ $ErrorMsg = RemoveDuplicatedLines error:  $ErrorMsg .= The given file . $Filepath . does not exist!  die($ErrorMsg); $Content = file_get_contents($Filepath); $Content = RemoveDuplicatedLinesByString($Content, $IgnoreCase, $NewLine); // Is the file writeable? if (!is_writeable($Filepath)){ $ErrorMsg = RemoveDuplicatedLines error:  $ErrorMsg .= The given file . $Filepath . is not writeable!  die($ErrorMsg); // Write the new file $FileResource = fopen($Filepath, w+  fwrite($FileResource, $Content);  fclose($FileResource);  * RemoveDuplicatedLinesByString * This function removes all duplicated lines of the given string. * @param string * @param bool * @return stringfunction RemoveDuplicatedLinesByString($Lines, $IgnoreCase=false, $NewLine= /n ){ if (is_array($Lines)) $Lines = implode($NewLine, $Lines); $Lines = explode($NewLine, $Lines); $LineArray = array(); $Duplicates = 0; // Go trough all lines of the given file for ($Line=0; $Line count($Lines); $Line++){ // Trim whitespace for the html' target='_blank'>current line $CurrentLine = trim($Lines[$Line]); // Skip empty lines if ($CurrentLine == ) continue; // Use the line contents as array key $LineKey = $CurrentLine; if ($IgnoreCase) $LineKey = strtolower($LineKey); // Check if the array key already exists, // if not add it otherwise increase the counter if (!isset($LineArray[$LineKey])) $LineArray[$LineKey] = $CurrentLine;  else  $Duplicates++; // Sort the array asort($LineArray); // Return how many lines got removed return implode($NewLine, array_values($LineArray)); }

使用范例:

// Example 1// Removes all duplicated lines of the file definied in the first parameter.$RemovedLinesCount = RemoveDuplicatedLines( test.txt print Removed $RemovedLinesCount duplicate lines from the test.txt file. // Example 2 (Ignore case)// Same as above, just ignores the line case.RemoveDuplicatedLines( test.txt , true);// Example 3 (Custom new line character)// By using the 3rd parameter you can define which character// should be used as new line indicator. In this case// the example file looks like foo;bar;foo;foo and will// be replaced with foo;bar RemoveDuplicatedLines( test.txt , false, 

總結(jié):以上就是本篇文的全部?jī)?nèi)容,希望能對(duì)大家的學(xué)習(xí)有所幫助。

相關(guān)推薦:

常見(jiàn)的php異常處理方法

PHP數(shù)組融合的兩種方法

php操作session及數(shù)據(jù)庫(kù)的方法

以上就是php操作文本文件刪除重復(fù)行的詳細(xì)內(nèi)容,PHP教程

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 鄂尔多斯市| 湖口县| 绩溪县| 无为县| 乌兰浩特市| 大邑县| 乌什县| 崇礼县| 永善县| 襄汾县| 玉田县| 乡城县| 长兴县| 梧州市| 博客| 连云港市| 堆龙德庆县| 庄河市| 隆尧县| 河间市| 遂平县| 呈贡县| 蒙自县| 卓尼县| 多伦县| 上虞市| 尖扎县| 亚东县| 泰来县| 汤原县| 新乐市| 哈巴河县| 恭城| 汉阴县| 阿克苏市| 高唐县| 南召县| 合川市| 龙川县| 新津县| 涟水县|