Home PHP А.Волос "PHP Практика " Глава 4 Делаем из файла - главу (VirtueMar) Listing_14_04
Listing_14_04 PDF Печать E-mail
Автор: А.Волос   
Глава_03


<?php
//Читает исходный файл source.txt и каждую функцию
//из исходного файла помещает в отдельный файл
//в каталоге from1.

$flag1 = 0;
$flag2 = 0;

$num_lex = 0;
//-----------------------------
// откроем файл для записи ошибок
$filename = "error.txt";
if(!($myFile = fopen($filename, "w"))) {

print("Error: ");
print("'$filename' could not be created\n");
exit;
}
//-----------------------------
// open directory
$myDirectoryFrom = opendir("from1");
$n=0;
// считаем в массив имена файлов из from1
while(FALSE !== ($entryName = readdir($myDirectoryFrom))) {
$masNameFrom[$n] = $entryName; $n++;
}
// сосчитаем количество элементов в массиве
$indexLimit = count($masNameFrom);

//---------------------------
//откроем файл для чтения
$Temp1 = "source.txt";
$filenameTo = "$Temp1";

if(!($myFileTo = fopen($filenameTo, "r"))) {

fputs($myFile, "'$filenameTo' could not be created\n" );
exit;
}

$index=2;
//---------------------------
// откроем файл для записи
// $Temp = "from1/";
// $filenameFrom = "$Temp$masNameFrom[$index]";
// if(!($myFileFrom = fopen($filenameFrom, "w"))) {
// fputs($myFile, "'$filenameFrom' could not be opened\n" );
// exit;
// }

///////////////////////////////////////////////////////////
//---------------------------
//считаем построчно из файла from в файл to
while(!feof($myFileTo)) {

//читаем строку из файла $myLine = fgets($myFileTo, 255);

if($index == ($indexLimit - 1)) break;

$str_temp = trim($myLine);

if($str_temp == "/**" & $num_lex < 3) {

$num_lex++;
fputs($myFile, "$str_temp $num_lex");//проверка
countinue;
}

if($num_lex < 3) continue;

if($str_temp == "/**") {

$flag1 = 1;
//fputs($myFile, $str_temp);//проверка
}

$num_temp = substr_count($myLine,"/**");

if($num_temp>0 & $flag1 == 1){

$flag1 = 0;
if($flag2 == 1){
// закроем файл
fclose($myFileFrom);
}
$flag2 = 1;
//---------------------------
// откроем файл для записи
$Temp = "from1/";
$filenameFrom = "$Temp$masNameFrom[$index]";
if(!($myFileFrom = fopen($filenameFrom, "w"))) {
fputs($myFile, "'$filenameFrom' could not be opened\n" );
exit;
}
$index++;

}//end if

fputs($myFileFrom, $myLine);

}//end while--------------------------------

fclose($myFileTo);

// close directory closedir($myDirectoryFrom);
fclose($myFile);
//--------------------------------
?>


Вверх

Обновлено 05.05.2011 08:00