PHP脚本将大文本文件分割成多个文件

2023-12-04

我正在努力创建一个 PHP 脚本来帮助根据行数将一个大文本文件拆分为多个较小的文件。我需要增加分割的选项,因此第一个文件从 10 行开始,第二个文件从 20 行开始,依此类推。


这是我的脚本中的一个函数:

<?php
/**
 *
 * Split large files into smaller ones
 * @param string $source Source file
 * @param string $targetpath Target directory for saving files
 * @param int $lines Number of lines to split
 * @return void
 */
function split_file($source, $targetpath='./logs/', $lines=10){
    $i=0;
    $j=1;
    $date = date("m-d-y");
    $buffer='';

    $handle = @fopen ($source, "r");
    while (!feof ($handle)) {
        $buffer .= @fgets($handle, 4096);
        $i++;
        if ($i >= $lines) {
            $fname = $targetpath.".part_".$date.$j.".log";
            if (!$fhandle = @fopen($fname, 'w')) {
                echo "Cannot open file ($fname)";
                exit;
            }

            if (!@fwrite($fhandle, $buffer)) {
                echo "Cannot write to file ($fname)";
                exit;
            }
            fclose($fhandle);
            $j++;
            $buffer='';
            $i=0;
            $line+=10; // add 10 to $lines after each iteration. Modify this line as required
        }
    }
    fclose ($handle);
}
?>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP脚本将大文本文件分割成多个文件 的相关文章

  • php_network_getaddresses: getaddrinfo 失败: 名称或服务未知 (0) 连接失败..!

    我正在使用 php 邮件程序功能 但出现以下错误 如何修复它 2016 01 22 06 15 48 SMTP 错误 无法连接到服务器 php network getaddresses getaddrinfo失败 名称或服务未知 0 连接失
  • 控制器 HMVC 内的 CodeIgniter 负载控制器

    我在用着http github com philsturgeon codeigniter template http github com philsturgeon codeigniter template 对于模板 我尝试将其他控制器视图
  • 在同一服务器上的 2 个子域中安装 2 个 WordPress 时共享用户

    我有 2 个 WordPress 网站 位于 2 个不同的子域中 例如test1 abc com and test2 abc com 这两个网站都激活了 wp require 插件 只有登录用户才能看到该网站 我们想要创建一个系统 如果用户
  • PHP7.1上读取会话数据失败

    分享一个我遇到的问题 现已解决 在我的开发机器上 我使用 PHP 运行 IIS 我升级到 PHP7 突然我的代码不再工作 返回此错误 session start 读取会话数据失败 用户 路径 C WINDOWS temp 看起来像是权限问题
  • php - 致命错误:调用 AppServ 中未定义的函数 mcrypt_get_iv_size()

    当我通过以下方式使用 mcrypt get iv size 函数时发现一个问题AppServ https www appserv org 我尝试寻找与解决问题相关的主题 但是 我尝试将 libmcrypt dll 下载到 symtem32
  • Apache LOG:子进程 pid xxxx 退出信号分段错误 (11)

    Apache PHP Mysql Linux 注意 子进程 pid 23145 退出信号分段错误 11 tmp 中可能存在 coredump 但 tmp下没有找到任何东西 我怎样才能找到错误 PHP 代码中函数的无限循环导致了此错误
  • php / phpDoc - @return $this 类的实例?

    如何在 phpDoc 中将方法标记为 返回当前类的实例 在下面的示例中 我的 IDE Netbeans 将看到 setSomething 始终返回foo object 但如果我扩展对象 情况就不是这样了 它会返回 this 在第二个示例中是
  • PHP 可以解压缩使用 .NET GZipStream 类压缩的文件吗?

    我有一个 C 应用程序 它与基于 PHP 的 SOAP Web 服务进行通信以进行更新和许可 我现在正在开发一个反馈系统 供用户通过软件自动提交错误和跟踪日志 根据我之前发布的问题 我认为 Web 服务将是实现此目的的最佳方法 最有可能以最
  • 确定 PHP 到目前为止执行了多长时间

    我需要确定 PHP 函数到目前为止已经运行了多长时间 有哪些选项可以确定某些 PHP 代码的运行时间 我正在使用 zend 框架 Call microtime true 函数以毫秒分辨率获取当前时间
  • Cron 作业的远程地址问题

    我需要获取访问者的IP 但是当cron运行时 它发现REMOTE ADDR是一个未定义的索引 事实上 当文件与 cron 一起运行时 没有远程地址 我该如何避免这个问题 PHP 有没有办法说 如果 REMOTE ADDR 存在则考虑它 如果
  • 通过 PEAR 安装 PHPUnit

    我安装时遇到问题PHPUnit 3 4 6 via 梨1 9 0 当我发现频道后pear phpunit de并尝试使用以下命令之一 pear 安装 phpunit PHPUnit pear 安装 alldeps phpunit PHPUn
  • AJAX 安全问题

    我希望能够解决一些关于 AJAX 安全性的问题 这是我试图理解的一个场景 假设我正在使用 AJAX 向页面请求一些半敏感材料 例如 我将把用户的 ID 传递给一个 php 文件 并返回一些关于他们自己的信息 现在 是什么阻止人们模拟此 Ja
  • Laravel 5.7:维护模式的自定义刀片模板,但不是 503.blade.php

    每次php artisan down开启后 Laravel 显示 503 页面 好的 我可以通过创建名为的新文件来自定义它503 blade php inside resources views errors 关键是 我在任何时候都不认为维
  • 计算帖子中使用 WordPress 短代码的次数

    我有以下 WordPress 短代码功能 function wp shortcode static i 1 return i i return return add shortcode shortcode wp shortcode 这很好用
  • 多维数组中的数组排列保留键 PHP

    这两天我一直在疯狂地尝试完成这个任务 也许你可以启发我 这是针对赛马投注排列的 每次用户玩游戏时 我都会得到一个多维数组 2 个级别 第一级包含比赛 ID 第二级包含用户为该比赛选择的马匹 它看起来像这样 play array 4 gt a
  • Symfony 4 生产模式错误处理页面内存耗尽

    我将我的项目设置为prod模式在 env除了自定义错误页面之外的所有内容似乎都有效 我将此作为我的 404 树枝模板 templates bundles TwigBundle Exception error404 html twig inc
  • 即使在双引号内或使用 PHP_EOL,PHP echo 也不打印换行符

    这是一张照片剪辑 我认为它很清楚 这真让我抓狂 我似乎无法让 php 在我的本地主机 使用 xampp 或在线 PHP 解释器上打印换行符 如果你想在 php 中使用 HTML 标签 试试这个 echo dkljaks aalksja kl
  • 使用多个 WHERE 子句更新 Codeigniter 中的批次

    我查看了 CI 用户指南来了解如何处理update batch 并且它似乎只接受一个索引来匹配要更新的行 但在我的例子中 我需要指定两个索引 例如lang and id page我一起用作索引 这样的lang en id page 115是
  • Symfony VS CakePHP:哪一个最接近 PHP [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我主要是一名 Rails 开发人员 但有时 我必须使用 PHP 进行编码 因为 stackoverflow com更喜欢可以回答的问题 我想知道
  • 为什么 0.5 mod 0.1 在不同的编程语言中结果不同?

    我有一个关于模数的问题 模运算求一个数除以另一个数的余数 我原本期望 0 5 0 1 0 的结果 但是当我在 PHP 或 net 中运行它时 我得到 0 1 我运行的 php 代码是 var dump fmod 0 5 0 1 在 net中

随机推荐