Разрезаем большой документ на части
Зачастую, при публикации на веб-сайтах приходится разрезать один большой документ (TXT или HTML) на десятки, а иногда даже сотни документов, именно для этого был написан скрипт приведенный ниже:
Подстрока, по которой производится «разрез», может содержать любые символы, в том числе и \n и \r
<?
$split_string="<hr>"; // Подсрока для разрезания файла
$file="petromix.htm"; // Имя разрезаемого файла
$num=0; // Начальный номер
$ext="htm"; // Расширение получаемых файлов
$length=2; // Количество цифр в имени файла
$fp=fopen($file,"rt");
$fname=$num;
while (strlen($fname)<$length) $fname="0".$fname;
$fw=fopen($fname.".".$ext,"wt");
while (!feof($fp)) {
$str=fgets($fp,32768);
if (strpos(strtoupper(" ".$str),strtoupper($split_string))!=0) {
$str1=substr($str,0,strpos(strtoupper($str),strtoupper($split_string)));
$str2=substr($str,strpos(strtoupper($str),strtoupper($split_string)),strlen($str));
fputs($fw,$str1."\n");
fclose($fw);
$num++;
$fname=$num;
while (strlen($fname)<$length) $fname="0".$fname;
$fw=fopen($fname.".".$ext,"wt");
}
else fputs($fw,$str);
}
fclose($fp);
fclose($fw);
?>
Download this code: split.phps
Комментарии