[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Запись результата в фаил
Ska-spy
вот имеется такой код:
Свернутый текст
<?php
$fp = fopen( "clans.txt", "w" ) or die ( "Не удалось открыть файл" );
fclose( $fp );
$url = file_get_contents("http://oldbk.com/encicl/klani/clans.php");

if ($url)
{

preg_match("|<li><strong>(.+)</a></strong>|is", $url, $bas);
$bas = strip_tags($bas[1]);
$array = str_replace(" ", ",", $bas);
$dwarf_array = explode(',',$array);
foreach ($dwarf_array as $val) {
$fy = fopen( "clans.txt", "a" ) or die ( "Не удалось открыть файл" );
fputs( $fy, "$val" );
fclose( $fy );
}

}
else
echo 'error';


?>

Парсер должен записывать названия кланов в файл, он записывает, но все в одну строчку, а надо чтобы каждый клан записывался новой строкой, подскажите, что нужно поправить.



Спустя 8 минут, 10 секунд (23.10.2011 - 15:28) kovaldm написал(а):
fputs( $fy, $val ."\n");

И вынеси открытие и закрытие файла за пределы цикла, а то у тебя в каждой итерации две лишние операции выполняются.

Спустя 1 минута, 9 секунд (23.10.2011 - 15:29) Winston написал(а):
fputs( $fy, $val . "\n");




Спустя 24 секунды Winston написал(а):
Круто laugh.gif

Спустя 1 минута, 31 секунда (23.10.2011 - 15:31) kovaldm написал(а):
Вот как оно бывает. wink.gif

Спустя 4 минуты, 18 секунд (23.10.2011 - 15:35) Ska-spy написал(а):
Спасибо, помогло, но теперь еще один вопрос, в конце файла добавляется пустая строка, как этого избежать?

Спустя 57 секунд (23.10.2011 - 15:36) kovaldm написал(а):
Последний элемент массива записывать без "\n".

Спустя 13 минут, 58 секунд (23.10.2011 - 15:50) Winston написал(а):
Свернутый текст
<?php
$fp = fopen( "file.txt", "w" ) or die ( "Не удалось открыть файл" );
fclose( $fp );
$url = file_get_contents("http://oldbk.com/encicl/klani/clans.php");

if ($url)
{
preg_match("|<li><strong>(.+)</a></strong>|is", $url, $bas);
$bas = strip_tags($bas[1]);
$array = str_replace(" ", ",", $bas);
$dwarf_array = explode(',',$array);
$fy = fopen( "file.txt", "a" ) or die ( "Не удалось открыть файл" );
$data = '';
foreach ($dwarf_array as $val) {
if(!next($dwarf_array))
$data .= $val;
else
$data .= $val . "\n";
}
fputs($fy, $data);
fclose($fy);
}
else
echo 'error';
?>
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.