设为首页收藏本站

UNIX技术社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
热搜: console
查看: 2105|回复: 0

php 文件切割 合并

[复制链接]
发表于 2013-4-16 16:07:17 | 显示全部楼层 |阅读模式
  1. <?php
  2. $orgFile = 'VirtualBox.exe';
  3. $cacheFileName = 'vbcache';

  4. cutFile($orgFile, 10 * pow(2,20)); //10 * pow(2,20) 就等于 10M
  5. mergeFile('cache2vb.exe');

  6. function cutFile($fileName,$block) {
  7. global $cacheFileName;

  8. if (!file_exists($fileName)) return false;

  9. $num = 1;
  10. $file = fopen($fileName, 'rb');
  11. while ($content = fread($file,$block)) {
  12. $cacheFile = $cacheFileName . $num++ . '.dat';
  13. $cfile = fopen($cacheFile, 'wb');
  14. fwrite($cfile, $content);
  15. fclose($cfile);
  16. }
  17. fclose($file);
  18. }

  19. function mergeFile($targetFile) {
  20. global $cacheFileName;

  21. $num = 1;
  22. $file = fopen($targetFile, 'wb');
  23. while ($num > 0) {
  24. $cacheFile = $cacheFileName . $num++ . '.dat';
  25. if (file_exists($cacheFile)) {
  26. $cfile = fopen($cacheFile, 'rb');
  27. $content = fread($cfile, filesize($cacheFile));
  28. fclose($cfile);
  29. fwrite($file, $content);
  30. } else {
  31. $num = -1;
  32. }
  33. }
  34. fclose($file);
  35. }
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表