php分割txt文本

我请问一下,php分割txt文本?

服务器内a.txt内有几万行数据,现在需要将他分割成多个txt,每个txt内保存2000条数据,求指教!方便的话可否给一个源码呢?
最新回答
一白遮

2024-09-27 03:22:33

如果文件不是很大的情况,试试下面这个:

<?php
function split_file($file_name, $number_lines)
{
    try
    {
        if(!file_exists($file_name)) throw new Exception("文件不存在!");

        $contents_array = array_chunk(file($file_name), $number_lines);
        if(!$contents_array || !is_array($contents_array)) throw new Exception("文件内容不合法!");

        array_walk($contents_array, function($contents, $k){
            foreach($contents as $value){
                file_put_contents($k . '.txt', $value, FILE_APPEND);
            } 
        });
    }
    catch(Exception $e)
    {
        echo $e->getMessage();    
    }
}
split_file("README.md", 200);
梦明

2024-09-27 12:42:39

先分割为数组,在每次取出数组的2000条存为一个数组,存储的时候把数据分割开。
墨染离殇

2024-09-27 10:33:15

这个网上搜索下。。