lopik_ Napisano 30 Września 2006 Zgłoś Napisano 30 Września 2006 Hmm napewno to jest proste, ale ja jakoś nie moge do tego dojść. Np. mam plik 'plik.txt' i w nim mam: Jan Kowalski 30 123 456 789 // Telefon Główna 123 Małopolska Wczytuję ten plik do tablicy: $tablica = file("plik.txt"); I chcę zmienić jakies dane o tym kimś, np chce zmienić numer telefonu, czy nazwisko, i chcę te nowe dane zapisać - no i właśnei mam problem ;/ Nie wiem jak zapisac w danym indexie tablicy nowe dane. Z góry dziękuję za pomoc. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
bellum Napisano 30 Września 2006 Zgłoś Napisano 30 Września 2006 (edytowane) Hmm napewno to jest proste, ale ja jakoś nie moge do tego dojść. Np. mam plik 'plik.txt' i w nim mam: Jan Kowalski 30 123 456 789 // Telefon Główna 123 Małopolska Wczytuję ten plik do tablicy: $tablica = file("plik.txt"); I chcę zmienić jakies dane o tym kimś, np chce zmienić numer telefonu, czy nazwisko, i chcę te nowe dane zapisać - no i właśnei mam problem ;/ Nie wiem jak zapisac w danym indexie tablicy nowe dane. Z góry dziękuję za pomoc. funkca file() zapisuje dane w tablicy numerycznej wiec indexem jest zawsze liczba liczona od 0 czyli, zmiana wyglada tak: $tablica[0] = 'nowa wartosc'; potem zrzucasz cała tablice do pliku w dowolny sposób np: $fp = fopen($adres, "w"); fputs($fp, implode("\r\n",$tablica)); fclose($fp); Edytowane 2 Października 2006 przez Zawadaki Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
lopik_ Napisano 30 Września 2006 Zgłoś Napisano 30 Września 2006 No tak, działa :) Domyślałem sie jak to niby zrobć, tylko nie wiedziałem właśnie jak zapisac tablice do pliku :) a to sie robi tak: implode("\r\n",$tablica) No i zrobiłem tak: <?php $tablica = file("baza.txt"); $tablica[2] = "Lat 60\n"; $plik = fopen("baza.txt", "w"); fwrite($plik, implode(" ", $tablica)); fclose($plik); foreach ($tablica as $wartosc) { echo nl2br($wartosc); } ?> Musiałem dodać do zmiennej "\n" bo wyglądało tak: (a po ponownym odświerzeniu stronny, kasowało kolejno 2 ostatnie linie) Jan Kowalski Lat 60 123 456 789 Główna 123 Małopolska W inplode usunąłem "\r\n" bo też po ponownym odświerzeniu dodawało linie. Ale tak jak zrobiłem to jest super :) Ponownie Dzięki Wielkie. ;] Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
ParanoiK Napisano 7 Grudnia 2006 Zgłoś Napisano 7 Grudnia 2006 A nie wygodniej ci trzymać danych jako CSV (comma separated values) albo zserializowany obiekt? Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...
PelzaK Napisano 8 Grudnia 2006 Zgłoś Napisano 8 Grudnia 2006 csv odpada ze względu na spacje, chyba że format je przewiduje w jakiś sposób... Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach More sharing options...