Показать сообщение отдельно

  #1089  
Старый 04.12.2007, 01:59
groundhog
Познавший АНТИЧАТ
Регистрация: 12.05.2007
Сообщений: 1,235
С нами: 9999746

Репутация: 1318


По умолчанию

FILE_TO_PARSE - файл, который нужно пропарсить;
FILE_TO_SAVE - файл, куда будет скинут результат;
FILE_DELIMETER - разделитель, по которому нужно парсить;

PHP код:
<?php

    define
("FILE_TO_PARSE", "1.txt");
    
define("FILE_TO_SAVE",  "2.txt");
    
define("FILE_DELIMETER",    ";");

    
$file_in  = fopen(FILE_TO_PARSE, "r") or die("Could not open source file!");
    
$file_out = fopen(FILE_TO_SAVE, "w+") or die("Colud not open destination file!");


    while (!
feof($file_in)) {
        
$line = trim(fgets($file_in));

        if (
strlen($line > 0) && strpos($line, FILE_DELIMETER)) {
            list(
$part1, $part2) = split(FILE_DELIMETER, $line);
            
$new_line = sprintf("%s%s%s\n", $part2, FILE_DELIMETER, $part1);
            
fputs($file_out, $new_line);
        }
    }

    
fclose($file_out);
    
fclose($file_in);

    print(
"Conversion complete!");

?>
или

PHP код:
<?php

    define
("FILE_TO_PARSE", "1.txt");
    
define("FILE_TO_SAVE",  "2.txt");
    
define("FILE_DELIMETER",    ";");

    
$file_in  = file(FILE_TO_PARSE) or die("Could not open source file!");
    
$file_out = fopen(FILE_TO_SAVE, "w+") or die("Colud not open destination file!");


    foreach (
$file_in as $item) {
        
$line = trim($item);

        if (
strlen($line > 0) && strpos($line, FILE_DELIMETER)) {
            list(
$part1, $part2) = split(FILE_DELIMETER, $line);
            
$new_line = sprintf("%s%s%s\n", $part2, FILE_DELIMETER, $part1);
            
fputs($file_out, $new_line);
        }
    }

    
fclose($file_out);

    print(
"Conversion complete!");

?>
 
Ответить с цитированием