用file读取 替换重复不会也有函数  哪个来着 楼下说 

解决方案 »

  1.   


    //一个思路
    $file_name="log.txt"; 
    $arr=file($file_name); 
    $result = array_unique($arr);
    print_r($result);
      

  2.   

    如果给每行加内容,直拉给数组项加内容,最后再加一个换行符就行,linux下是\n将数组连成字串保存文件即可
      

  3.   

    $file_name="log.txt"; 
    $fp=fopen($file_name,'r'); 
    $res=array();
    while(!feof($fp)) 

    $buffer=fgets($fp,4096); 
    if (!in_array($buffer,$res)) {
    $res[sizeof($res)]=$buffer;


    print_r($res);
    fclose($fp);可能需要替换掉每行的\r\n
      

  4.   

    cat source.txt|sort|uniq -c >result.txt
      

  5.   

    <?php
    $dir="/Data/webapps/test";
    $fname="123.txt";
    $count="";
    chdir($dir);
    $fd = fopen("$dir/$fname","r+");
    while ($str = fgets($fd)){
    if (empty($str)) continue;
    $count[$str]++;
    }
    //根据value逆向排序数组
    arsort($count); //不需要可注释掉
    //输出结果--如果只需要排重后结果只输出$key即可
    echo "字符\t出现次数\n";
    foreach ((array)$count as $key=>$value){
    echo $key."\t".$value."\n";
    }
    ?>
      

  6.   

    如果内容不多,可以使用读取每行到一个数组,然后array_unique
      

  7.   

    是啊。内容多了。你玩array,肯定没戏
      

  8.   

    以行行读取,去掉字串两边的空格,
    以数组的形势保存所有行的数据,
    然后用array_unique就可以删除重复行了
      

  9.   

    如果内容多,可以使用md5加密行内容后作为数组的key,然后array_unique.