Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Usuwanie pustych linii
ZeTu
post
Post #1





Grupa: Zarejestrowani
Postów: 217
Pomógł: 8
Dołączył: 8.12.2010

Ostrzeżenie: (0%)
-----


Witam
W jaki sposób można usunąć puste linie z pliku np. .txt o takich danych
  1. cos tam
  2. cos tam
  3.  
  4. cos tam
  5. cos tam
  6. cos tam
  7.  
  8. cos tam

I w jaki sposób usunąć wszystkie puste linie?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
mortus
post
Post #2





Grupa: Zarejestrowani
Postów: 2 178
Pomógł: 596
Dołączył: 25.09.2009
Skąd: Piwniczna-Zdrój

Ostrzeżenie: (0%)
-----


Innym rozwiązaniem może być użycie funkcji file() z flagą FILE_SKIP_EMPTY_LINES:
  1. $filename = 'dane.txt';
  2. $lines = file($filename, FILE_SKIP_EMPTY_LINES);
  3. file_put_contents($filename, implode('', $lines));

Oczywiście to rozwiązanie, jak i rozwiązanie użytkownika @by_ikar należy stosować do plików "małych", o wielkości powiedzmy do 50MB. W sytuacji, kiedy plik będzie zbyt duży (będzie zawierał dużo treści) braknie nam pamięci na wykonanie całego skryptu. Wtedy trzeba skorzystać z funkcji fopen(), fgets(), sprawdzać długość każdej pobranej linii i zapisywać ją, lub nie do nowego pliku czy tablicy, z której później utworzysz plik.

EDIT: De facto, dokładnie taki sam problem był już na forum poruszany.

Ten post edytował mortus 1.01.2012, 13:43:15
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 31.12.2025 - 05:38