Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Obsługa plików, tablica dwuwymiarowa asocjacyjna
Forum PHP.pl > Forum > Przedszkole
chamianeq
Cześć,
mam następujące zadanie:
Napisz program, który zapisze do pliku Twój
plan w postaci dzień=>przedmiot1,przedmiot2,przedmiot3…. Każdy dzień w osobnej linii.
Następnie napisz program, który wczyta plan do tablicy dwuwymiarowej asocjacyjnej
(pierwszy wymiar). Skorzystaj z funkcji explode oraz implode.

a tyle zrobiłem i nie mam pomysłu na więcej:
  1.  
  2. $plan = fopen("plan.txt", 'w') or die("Nie udało się utworzyć pliku");
  3.  
  4.  
  5. $planLekcji = array(
  6. 'Poniedziałek' =>array('j.angielski', 'matematyka'),
  7. 'Wtorek' =>array('j.polski', 'W-F'),
  8. 'Środa' =>array('Historia', 'matematyka'),
  9. 'Czwartek' =>array('Przyroda', 'Bilogia'),
  10. 'Piątek' =>array('j.angielski', 'Chemia'),
  11. );
  12.  
  13. foreach ($planLekcji as $dzien =>$przedmioty){
  14. echo "<br>Lekcje w ciągu dnia: $dzien:<br>";
  15. fwrite($plan, $dzien) or die("Nie udało się zapisać danych do pliku");
  16. foreach ($przedmioty as $przedmiot){
  17. fwrite($plan, $przedmiot) or die("Nie udało się zapisać danych do pliku");
  18. echo " Przedmiot: ".$przedmiot."<br>";
  19. }
  20. }


Ktoś pomoże? :/
Pyton_000
Przecież sam napisałeś żeby użyć explode() i implode() więc czemu tego nie robisz?
SzpaaQ
  1. foreach($planLekcji as $k => $v){
  2. $array[] = $k.'=>'.implode(',', $v);
  3. }
  4. $tresc = implode("\r\n", $array);
  5. fwrite($plan, $tresc);
||
  1. foreach($planLekcji as $k => $v){
  2. $tresc .= (($array) ? "\r\n" : '')/*aby nie dodawało lini na koncu*/ .$k.'=>'. implode(',', $v);
  3. }
  4. fwrite($plan, $tresc);


Plik wygląda wtedy tak:
Poniedziałek=>j.angielski,matematyka
Wtorek=>j.polski,W-F
Środa=>Historia,matematyka
Czwartek=>Przyroda,Bilogia
Piątek=>j.angielski,Chemia
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.