Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: explode a smarty
Forum PHP.pl > Forum > Przedszkole
poncjusz
Mam problem z przeslaniem smarty tablicy bedacej elementami pliku, kod wyglada tak:
  1. <?php
  2.  
  3. $plik= fopen (&#092;"oddzialy.txt\", 'r');
  4. $string= fgets($plik, 999);
  5. fclose ($plik);
  6. $oddzialy=explode(&#092;" \", $string);
  7. $smarty->assign('oddzialy', $oddzialy);
  8.  
  9. ?>

i tak niestety nie dziala, wiem ze cos jest nie tak przy przekazywaniu do smarty, tak np dziala:
  1. <?php
  2.  
  3. $plik= fopen (&#092;"oddzialy.txt\", 'r');
  4. $string= fgets($plik, 999);
  5. fclose ($plik);
  6. $oddzialy=array (&#092;"cos tam\", \"cos tam2\");
  7. $smarty->assign('oddzialy', $oddzialy);
  8. ?>


Poradzcie...
nospor
Jeśłi przeakzanie bezpośrednio tablicy:$oddzialy=array ("cos tam", "cos tam2");
ci działa, oznacza to że explode na pliku ci nie działa a nie smarty. MOże w pliku nie masz spacji, może ci go nie czyta. Wyświetl se tablice $oddziały zaraz po explode:
print_r($oddzialy);
poncjusz
Wyswietla mi sie wtedy
  1. <?php
  2.  
  3. Array ( [0] => )
  4.  
  5. ?>
nospor
Czyli jak mówilem. Masz problem z tworzeniem tablicy z pliku. Co masz w pliku? Są tam te spację których używasz do rozdzielania?
A nie lepiej zrobić tak:
  1. <?php
  2.  
  3. if (file_exists('oddzialy.txt'))
  4. $oddzialy=explode(&#092;" \", file_get_contents('oddzialy.txt'));
  5. else
  6. echo &#092;"plik nie istnieje\";
  7.  
  8. ?>
Dodalem sprawdzanie czy plik istnieje
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.