PHP读写大文件

来源:互联网 发布:linux expect -c 编辑:程序博客网 时间:2024/04/30 21:47
<?php
// 读写大二进制文件,不必申请很大内存
// 只有读取到内容才创建文件
// 保证目录可写

function fetch_big_file($src_path, $dst_path)
{
    
if (!$fp_src = fopen ($src_path, "rb"))
        
return false;
    
$write_file_open = false;

    
do {
            
++ $count;
        
$data = fread($fp_src, 8192);
        
if (!$data) {
            
break;
        } 
else if ( !$write_file_open ) {
                
// 第一次读取文件,并且有内容,才创建文件
            $fp_dst = fopen($dst_path, "wb");
            
$write_file_open = true;
            
fwrite($fp_dst, $data);
        }    
// 写入
        else {
             
fwrite($fp_dst, $data);
        }
    } 
while(true);

    
fclose ($fp_src);
    
fclose ($fp_dst);
    
return true;
}

?> 
 
原创粉丝点击