大文件切割

/**
 *@FUNCNAME:fileResult;
 *@AUTHOR:dudongjiang;
 *@DATE:2016年10月21日;
 *@EFFORT:大文件切割的方法;
 **/
function fileResult($file,$directory,$log){
    $i = 0;
    if(!is_dir($directory)){
        mkdir($directory);
    }
    $filesArr = array();
    $fp = fopen($file,"rb");
    $logfile = fopen($log, "wb");
    while(!feof($fp)){
        //打开要写入的文件
        $handle = fopen($directory.'/'.$log.$i, 'wb');
        //拆分文件  按照大小进行写入
        fwrite($handle,fread($fp,10000));
        //保存拆分之后数据保存的文件名
        fwrite($logfile, $directory.'/'.$log.$i."\r\n");
        //将打印的所有的文件名
        $filesArr[] = $directory.'/'.$log.$i;
        fclose($handle);
        unset($handle);
        $i++;
    }
    fclose($logfile);
    fclose($fp);
    return $filesArr;
}

你可能感兴趣的:(PHP)