Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Wyświetlanie danych z pliku TXT
Elber
post
Post #1





Grupa: Zarejestrowani
Postów: 381
Pomógł: 12
Dołączył: 9.07.2007

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


Witam, Mam plik test.txt który wygląda tak:

ID#Imie Nazwsiko##ID2#UL. nazwa_ulicy

Jak wyświetlić osobno:

Imię:
Nazwisko:
Nazwa ulicy(bez tego UL.):

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Elber
post
Post #2





Grupa: Zarejestrowani
Postów: 381
Pomógł: 12
Dołączył: 9.07.2007

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


HMm napisałem coś takiego:

  1. if (is_file('pliki_txt/test.txt')){
  2.  
  3. $plik=file_get_contents('pliki_txt/test.txt');
  4.  
  5. $plik_utf8 = iconv('ISO-8859-2', 'UTF-8', $plik);
  6.  
  7. for ($ile_danych = 0; $ile_danych < count($plik_utf8); $ile_danych++ ){
  8.  
  9. $linia=explode("\n",$plik_utf8);
  10.  
  11. for ($i = 0; $i < count($linia); $i++ ){
  12.  
  13. $dane=explode('#',$linia[$i]);
  14.  
  15. $imie = explode(' ',$dane[1]);
  16.  
  17. $ulica = explode(' ',$dane[4]);
  18.  
  19. echo 'ID: '.$dane[0].' - Imię: '.$imie[0].' - Nazwisko: '.$imie[1].' - Ulica: '.$ulica[1].'<br />';
  20.  
  21. }
  22.  
  23. }
  24.  
  25. } else { echo 'brak pliku'; }


Ale czy jest to wydajne ? I czy nie można tego zrobić lepiej / szybciej ? I wywala mi błąd na końcu że ostatnia linijka jest pusta ...

Notice: Undefined offset: 1 in test.php on line 31 Notice: Undefined offset: 4 in test.php on line 32
Notice: Undefined offset: 1 in test.php on line 34 Notice: Undefined offset: 1 in test.php on line 34
ID: - Imię: - Nazwisko: - Ulica:

Jak zrobić aby sprawdzał czy ostatnia linijka jest pusta i jak tak to ma nie wyświetlać ?

Ok zrobiłem to z tą ostatnią linią teraz to wygląda tak:

  1. if (is_file('pliki_txt/test.txt')){
  2.  
  3. $plik=file_get_contents('pliki_txt/test.txt');
  4.  
  5. $plik_utf8 = iconv('ISO-8859-2', 'UTF-8', $plik);
  6.  
  7. for ($ile_danych = 0; $ile_danych < count($plik_utf8); $ile_danych++ ){
  8.  
  9. $linia=explode("\n",$plik_utf8);
  10.  
  11. for ($i = 0; $i < count($linia); $i++ ){
  12. if($linia[$i] != ''){
  13.  
  14. $dane=explode('#',$linia[$i]);
  15.  
  16. $imie = explode(' ',$dane[1]);
  17.  
  18. $ulica = explode(' ',$dane[4]);
  19.  
  20. echo 'ID: '.$dane[0].' - Imię: '.$imie[1].' - Nazwisko: '.$imie[0].' - Ulica: '.$ulica[1].' '.$dane[5].'/'.$dane[6].'<br />';
  21.  
  22. }
  23. }
  24.  
  25. }
  26.  
  27. } else { echo 'brak pliku'; }


Ale czy jest to wydajne ? I czy nie można tego zrobić szybciej / lepiej ?

Ten post edytował Elber 18.10.2011, 11:54:45
Go to the top of the page
+Quote Post

Posty w temacie
- Elber   [PHP] Wyświetlanie danych z pliku TXT   18.10.2011, 11:22:13
- - cuterOne   explode('#') do utworzenia tablicy explode...   18.10.2011, 11:24:06
- - cuterOne   imie i nazwisko też explode(" ")   18.10.2011, 11:25:13
- - Sephirus   Albo uzyć odpowiedniego preg_match'a typu: [P...   18.10.2011, 11:47:06
- - Elber   HMm napisałem coś takiego: [PHP] pobierz, plainte...   18.10.2011, 12:06:36
- - Sephirus   Szczerze - strasznie to zagmatwałeś Przede wszys...   18.10.2011, 12:12:59
|- - Elber   Cytat(Sephirus @ 18.10.2011, 13:12:59...   18.10.2011, 12:20:36
- - konrados   Cytatto jeśli wstawię $linijki = explode(...   18.10.2011, 12:28:03
- - Elber   Hmm jak dam tak: [PHP] pobierz, plaintext foreac...   18.10.2011, 12:53:59
- - konrados   CytatOk z tym od początku do końca to mój błąd ......   18.10.2011, 12:56:23
- - Elber   Próbowałem nim napisałem post...jednak nic to nie ...   18.10.2011, 13:07:32
- - konrados   No to popróbuj, może if(count($dane) < 4...   18.10.2011, 13:18:26
- - Elber   Extra if(strlen($linia) == 0) break; przed e...   18.10.2011, 13:20:14
- - konrados   Spoko   18.10.2011, 13:20:49
- - Elber   Jeszcze teraz mi się nasunęło ... jak wyświetlić p...   18.10.2011, 14:21:45
- - konrados   A po co robisz explode? Jeśli chodzi Ci o to, że n...   18.10.2011, 15:20:17
- - Elber   OK Działa dzięki Mam jeszcze jedno pytanie Otó...   21.10.2011, 19:47:49
- - gorden   po pierwsze, zdeklaruj pętlę tak: [PHP] pobierz, p...   22.10.2011, 11:19:23
|- - lukasz_test   Cytat(gorden @ 22.10.2011, 12:19:23 )...   25.10.2011, 18:56:19
- - Elber   Kolega @konrados napisał mi: CytatPo if(strlen(...   25.10.2011, 23:39:03
- - dwwa   wpakuj to w xml i później użyj simplexml ;d   25.10.2011, 23:47:27
- - Elber   W tym momencie byłoby to bez sensu próbowałem zro...   27.10.2011, 11:29:36
- - gorden   a próbowałeś mojego sposobu ?   27.10.2011, 14:47:54


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: 8.10.2025 - 06:34