PHP 分割文件

PHP 分割文件

功能:将10000条数据的txt文件分割成10个txt文件,每个文件1000条数据,将文件中的‘,’替换成‘;’

<?php
//想分割的文件
$file_name = '/var/data10000.txt';
//如果文件存在
if (file_exists($file_name)) {
    //读取文件
    $fp = fopen($file_name, 'r');
    //文件名字(data1.txt,data2.txt...data10.txt)
    $num_file = 1;
    //文件行号
    $num_row = 1;
    //打开第一个写入的文件
    $fp_write = fopen('data' . $num_file . '.txt', 'w');
    if ($fp_write == false) {
        echo 'file open failed';
    }
    //判断是否文件的最后一行
    while (!feof($fp)) {
        $row_data = fgets($fp);
        //把此行的‘,’替换成‘;’
        $row_data1 = str_replace(",", ";", $row_data);
        $booflag = fwrite($fp_write, $row_data1);
        if ($booflag == false) {
            echo "error";
        }
        //每1000行写入一个文件
        if ($num_row % 1000 == 0) {
            //关闭文件
            fclose($fp_write);
            //第几个文件
            $num_file++;
            //如果读取的不是最后一行
            if ($num_row != 10000) {
                //打开下一个文件写入
                $fp_write = fopen('data' . $num_file . '.txt', 'w');
                if ($fp_write == false) {
                    echo 'file open failed';
                }
            }
        }
        //文件行号
        $num_row++;
    }
    echo "OK";
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值