【问题标题】:How to split single file in to multiple pieces using php?如何使用php将单个文件拆分为多个部分?
【发布时间】:2019-09-05 17:51:39
【问题描述】:
我正在寻找将单个文件拆分为多个文件的代码,就像 torrent 一样。
我将尝试将其作为 Web 应用程序。所以我需要一个后端代码
当用户输入一个 200mb 的文件时;输出必须将文件分成更小的部分,如 20kb/file
【问题讨论】:
标签:
php
web
web-applications
backend
【解决方案1】:
你去...
// 20 KB
$partSize = 20 * 1024;
$fileSize = filesize($theFile);
$fileNameTemplate = __DIR__ . '/split_no_%04d.whatever';
$fileHandle = fopen($theFile, 'r');
$counter = 0;
while($fileSize > 0 && !feof($fileHandle)) {
$counter++;
// create a new filename
$newFile = sprintf($fileNameTemplate, $counter);
// open new file
$writeHandle = fopen($newFile, 'w');
// read portion of the big file
$content = fread($fileHandle, $partSize);
// write it to the new file
$written = fwrite($writeHandle, $content);
// close file pointer
fclose($writeHandle);
// adjust remaining bytes
$fileSize -= $written;
echo '- '. $written . ' bytes'. PHP_EOL;
}