test_zx/breakpoint

断点续传-后端实现,本地存储

v1.0.0 2025-04-29 07:24 UTC

This package is auto-updated.

Last update: 2025-04-29 09:37:30 UTC


README

上传前检查

    $breakPointObj = new BPUploaderLocal();
    $breakPointObj ->chunkDir = __DIR__. '/../upload';
    $breakPointObj ->check($identifier);

上传文件

    // 文件准备
    $testFile = [
        'name' => 'test.txt',
        'type' => 'text/plain',
        'tmp_name' => __DIR__ . '/test.txt',
        'error' => UPLOAD_ERR_OK,
        'size' => 100,
    ];
    // 创建临时文件
    file_put_contents($testFile['tmp_name'], 'This is a test file.');
    
    // 检查唯一标识
    $breakPointObj = new BPUploaderLocal();
    $breakPointObj ->chunkDir = __DIR__. '/../upload';
    $breakPointObj ->upload($identifier,1,$testFile);

文件合并

    // 检查唯一标识
    $breakPointObj = new BPUploaderLocal();
    $breakPointObj ->chunkDir = __DIR__. '/../upload';
    $breakPointObj ->finalFileDir = __DIR__. '/../newUpload';
    $breakPointObj ->merge($identifier,$newFileName,$totalChunks);

备注

  • $identifier 文件32位唯一标识
  • chunkDir 为临时切块存储路径
  • finalFileDir 为最终目录存储地址
  • check 为检查方法,返回已经存储的块序号烈豪
  • upload 为上传方法,返回成功块编号
  • merge 为合并方法,返回最终文件的绝对路径