Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Wczytanie danych z pliku tekstowego
Lukas83
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 10.09.2007

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


Chciałbym wczytać dane z pliku tekstowego o "aa.txt". Plik "aa.txt" przedstawia się następująco:
Kod
   tytul=Jakiś Tytuł
       rodzaj=klasyka
       rodzaj=planszowa
       rodzaj=strategiczna
       jezyk=polski
       jezyk=angielski

Z tego co dowiedziałem się z kursu to "Funkcja file($nazwa_pliku) zwraca tablicę, w której każdy element jest osobnym wierszem z pliku, którego nazwa jest podana w parametrze.", a więc:
Kod
     $plik = implode('', file('nazwa_pliku'));

Tylko zupełnie nie wiem jak to zastosować z podanego przezemnie pliku tekstowego. Chciałbym, aby zmienne zostały przypisane w taki sposób, aby efektem wczytania danych z tego pliku było coś takiego w kodzie html:
Kod
<b>Jakiś tytuł</b></br><b>Rodzaj gry:</b> klasyka, planszowa, strategiczna.</br><b>Język gry:</b>polski, angielski.

Prosiłbym o nakierowanie mnie w jaki sposób uzyskać taki efekt.

Ten post edytował Lukas83 10.09.2007, 14:40:49
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Cytat(Lukas83 @ 10.09.2007, 15:39:10 ) *
Prosiłbym o nakierowanie mnie w jaki sposób uzyskać taki efekt.

Więc ja bym to widział tak. Wczytujesz plik do tablicy dzięki file()" title="Zobacz w manualu PHP" target="_manual. Następnie robisz pętle foreach na utworzonej tablicy i każdy element przelatujesz funkcją explode()" title="Zobacz w manualu PHP" target="_manual jako separator podając '='. Dostaniesz wtedy tablicę dwóch elementów: $tab[0] to nazwa 'grupy' danych (np. tytul, rodzaj, jezyk) oraz $tab[1] będący wartością. Robisz przypisanie do tablicy (wcześniej ją utwórz jako pustą $data = array()) poprzez $data[$tab[0]][] = $tab[1] w wyniku czego otrzymasz tablicę asocjacyjną postaci:
  1. <?php
  2. $data['tytul'] = array(
  3. 0 => 'Jakis tytul'
  4. );
  5. $data['rodzaj'] = array(
  6. 0 => 'klasyka',
  7. 1 => 'planszowa',
  8. 2 => 'strategiczna'
  9. );
  10. $data['jezyk'] = array(
  11. 0 => 'polski',
  12. 1 => 'angielski'
  13. );
  14. ?>

Możesz teraz wyświetlić dane na podstawie tej struktury używając:
  1. <?php
  2. echo '<b>'.$data['tytul'][0].'</b><br><b>Rodzaj gry:</b> '.implode(', ', $data['rodzaj']).'<br><b>Jezyk gry:</b> '.implode(', ', $data['jezyk']);
  3. ?>

I po herbacie. Mam nadzieję, że jasno opisałem mój sposób rozwiązania problemu i że nigdzie się nie machnąłem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)

Ten post edytował phpion.com 10.09.2007, 16:12:19
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: 14.10.2025 - 16:32