
baobao - 云代码空间
——
<?php
$i = 0; //分割的块编号
$fp = fopen("abc.rmvb","rb"); //要分割的文件
$file = fopen("split_hash.txt","a"); //记录分割的信息的文本文件
while(!feof($fp))
{
$handle = fopen("abc.rmvb.{$i}","wb");
fwrite($handle,fread($fp,5000000)); //5000000 可以自定义.就是每个所分割的文件大小
fwrite($file,"qqdjz_002.rmvb.{$i}\r\n");
fclose($handle);
unset($handle);
$i++;
}
fclose ($fp);
fclose ($file);
echo "ok";
?>
merge.php 合并多个文件为一个大文件
<?php
$mov = file_get_contents("abc.txt"); //读取分割文件的信息
$list = explode("\r\n",$mov);
$fp = fopen("split.wmv","ab"); //合并后的文件名
foreach($list as $value)
{
<span style="white-space: pre;"> </span>if(!emptyempty($value)) {
<span style="white-space: pre;"> </span>$handle = fopen($value,"rb");
<span style="white-space: pre;"> </span>fwrite($fp,fread($handle,filesize($value)));
<span style="white-space: pre;"> </span>fclose($handle);
<span style="white-space: pre;"> </span>unset($handle);
<span style="white-space: pre;"> </span>}
}
fclose($fp);
?>
使用过程中可能会出现php脚本执行超时,解决如下:
搜索max_execution_time = 30 ; 每个脚本的最大执行时间, 按秒计的,修改成需要的值即可,建议不要太大!
也可以在脚本中使用函数修改: set_time_limit (60);
=================================================
语法 : void set_time_limit (int seconds)
说明 :
设定一个程式所允许执行的秒数,如果到达限制的时间,程式将会传回错误。它预设的限制时间是30秒,max_execution_time的值定义在结构 档案中(在PHP3中叫做php3.ini,在PHP4则叫做php.ini),如果将秒数设为0,表示无时间上的限制。
当呼叫此函式时,set_time_limit( )会从零重新开始计算最长执行的时间,也就是说,如果最长执行时间为预设的30秒,而在呼叫此函式set_time_limit(20)之前已花了25秒来执行程式,则程式最长执行的时间将会是45秒。
注意 : 当PHP是执行在安全模式时,set_time_limit( )将不会有结果,除非是关闭安全模式或是修改结构档案中(在PHP3中叫做php3.ini,在PHP4则叫做php.ini)的时间限制。
例 :
set_time_limit(1000)