Кто-нибудь написал быстрый алгоритм, который генерирует БОЛЬШОЙ фиктивный файл в PHP, скажем, 500 МБ-2 ГБ?
Если вы вообще не заботитесь о содержимом файла, вы можете просто искать любую позицию и писать что-то:
$f = fopen('largefile', 'wb'); fseek($f, 2 * 1000 * 1000 * 1000, SEEK_SET); fwrite($f, 'after 2 GB'); fclose($f);
Если ОС и файловая система поддерживают разреженные файлы , файл будет действительно большим, но на самом деле не займет больше двух байтов дискового пространства.
/* far too long to file creation , do not use especially not $f = fopen('largefile', 'wb'); fseek($f, 2 * 1000 * 1000 * 1000, SEEK_SET); fwrite($f, 'after 2 GB'); fclose($f);*/
^^ Лучшая функция здесь с 0s для создания 4 ГБ файла ^^
FUNCTION CreatFileDummy($file_name,$size) { // 32bits 4 294 967 296 bytes MAX Size $f = fopen($file_name, 'wb'); if($size >= 1000000000) { $z = ($size / 1000000000); if (is_float($z)) { $z = round($z,0); fseek($f, ( $size - ($z * 1000000000) -1 ), SEEK_END); fwrite($f, "\0"); } while(--$z > -1) { fseek($f, 999999999, SEEK_END); fwrite($f, "\0"); } } else { fseek($f, $size - 1, SEEK_END); fwrite($f, "\0"); } fclose($f); Return true; }
проверьте его ^^ Макс в Php 32bit 4 294 967 296:
CreatFileDummy ( 'mydummyfile.iso', 4294967296);
Вы хотите писать, читать и создавать файлы Dummy, мой код здесь ^^: