Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Interpretowanie pliku do wielowymiarowej tablicy
~dNkN!
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 19.02.2010

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


próbuję zbudować system, który będzie przechowywał surowe dane tablic w plikach .txt.

pomyślałem, że przykładowy plik mógł by wyglądać tak:
Kod
NAZWA TABELI
A/B    B1     B2     B3     B4     B5
A1     01     02     03     04     05
A2     06     07     08     09     10
A3     11     12     13     14     15
A4     16     17     18     19     20
A5     21     22     23     24     25


chciał bym teraz jedną funkcją zinterpretować plik jako dwuwymiarową tablicę $tablica[$linia][$tab] ale nie bardzo wiem, jak w pętli przekazać tablicę do tablicy.
  1. function _fileToArray($file, $delimeter) {
  2. $handle = file($file);
  3. $count = count($handle);
  4. for ($line = 0; $line < $count; $line++) {
  5. $cell = split($delimeter,$handle[$line]);
  6. $handle[$line] = $cell;
  7. }
  8. return $handle;
  9. }


proszę o pomoc.
Go to the top of the page
+Quote Post
Pilsener
post
Post #2





Grupa: Zarejestrowani
Postów: 1 590
Pomógł: 185
Dołączył: 19.04.2006
Skąd: Gdańsk

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


Tablica to para klucz->wartość. Klucz musisz sobie wybrać, zakładam, że będzie to kolumna nr 1, natomiast pozostałe kolumny znajdą się w tablicy umieszczonej pod tym kluczem:
  1. $uchwyt = fopen($pliczek,'r'); //otwieramy plik
  2. while(!feof($uchwyt)){ //parsujemy linia po linii
  3. $linia = rtrim(fgets($uchwyt)); //pobieramy linię z pliku
  4. $t_linia = explode(" ",$linia); //tworzymy z niej tablicę wg spacji
  5. $klucz = array_shift ($t_linia); //zdejmujemy z tablicy pierwszy element, który będzie kluczem/indeksem nowej tablicy
  6. $nowa_tablica[$klucz] = $t_linia; //tworzymy nową tablicę
  7. }
  8. fclose($uchwyt);
  9. print_r($nowa_tablica);


Powinno działać, nie wiem jak masz zorganizowane dane w pliku, założyłem, że oddziela je spacja.
Go to the top of the page
+Quote Post
~dNkN!
post
Post #3





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 19.02.2010

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


wow, imponujące. nie dosyć, że działa to jeszcze zrozumiałem o co chodzi.

dziękuje za pomoc, działa.

Ten post edytował ~dNkN! 19.02.2010, 18:47:29
Go to the top of the page
+Quote Post

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: 18.09.2025 - 14:11