[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Удаление пустых строк
CreAziZ
Как удалить из файла пусты строки?



Спустя 9 минут, 50 секунд (7.07.2011 - 18:34) tatti написал(а):
если в новой строке встречаются только невидимые символы, строку не сохраняем в переменную. в конце переменную пересохраняем в файл. подругому не умею ph34r.gif

Спустя 10 минут, 26 секунд (7.07.2011 - 18:44) Mirexzpalich написал(а):
ТУТ БЫЛО ТО, ЧТО ЛУЧШЕ ДАЖЕ НЕ СМОТРЕТЬ....

Спустя 3 минуты, 22 секунды (7.07.2011 - 18:47) Игорь_Vasinsky написал(а):
Mirexzpalich
сольно wink.gif

Спустя 36 минут, 42 секунды (7.07.2011 - 19:24) waldicom написал(а):
Цитата (Mirexzpalich @ 7.07.2011 - 16:44)

file_put_contents('text.txt',join("\n",array_diff(explode("\n",file_get_contents('text.txt')),array(''))));


file_put_contents('text.txt',str_replace("#(\n\n)+#","\n",file_get_contents('text.txt')));

У меня оба примера не работают.
Правда не работает и такой пример, хотя должен.
file_put_contents('test.txt', file('test.txt', FILE_SKIP_EMPTY_LINES));

Вот файл test.txt

Спустя 1 час, 17 минут, 8 секунд (7.07.2011 - 20:41) Mirexzpalich написал(а):
Игорь_Vasinsky
Действительно, бред написал.....

waldicom
Вот так вот робит

file_put_contents('text.txt',array_diff(file('text.txt'),array("\n","\r",'',' ',"\r\n","\n\r")));


Спустя 2 часа, 5 минут, 17 секунд (7.07.2011 - 22:47) ИНСИ написал(а):
Mirexzpalich у меня не работает твоя функция :(

CreAziZ попробуй так:
$thisFile = 'test.txt';
file_put_contents($thisFile, preg_replace('~\s\s+~',"\r\n",file_get_contents($thisFile)));

Спустя 3 минуты, 54 секунды (7.07.2011 - 22:50) ИНСИ написал(а):
waldicom у тебя не работает, потому что ты пытаешься открытый файл перезаписать. Вот так работает:
file_put_contents('newFile.txt', file('test.txt', FILE_SKIP_EMPTY_LINES));


CreAziZ но данный метод будет работать лишь php 5 > .... версии

Спустя 12 минут, 31 секунда (7.07.2011 - 23:03) DySprozin написал(а):
чето у вас сложно... регулярки, еще что-то... я по-старинке люблю B)

<?php
$f = 'file.txt';
$rez = rtrim(join('', array_map("ltrim", file($f))));
fwrite(fopen($f, 'w'), $rez);

Спустя 6 минут, 10 секунд (7.07.2011 - 23:09) ИНСИ написал(а):
DySprozin ;)
Неплохо, но я бы сделал так:
$file = 'test2.txt';
file_put_contents($file, rtrim(implode('', array_map('ltrim', file($file)))));

Спустя 27 минут, 19 секунд (7.07.2011 - 23:36) DySprozin написал(а):
INSIDIOUS
неплохо, но мой в php4 работает :P

а для php5 лучше твой вариант
file_put_contents('newFile.txt', file('test.txt', FILE_SKIP_EMPTY_LINES));

(;
Быстрый ответ:

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