ďťż
Podstrony
|
telcocafew jaki sposob, moglbym w php podmienic zawartosc (np.) 6 linijki w pliku "test.txt" na np. "abc"?Może coś takiego: w pętli foreach otwierasz plik (nazwa w zmiennej $dane) i zawartość każdej linijki przesyłasz do tablicy $tab. Zawartość przed tą linią szóstą zapisujesz do zmiennej, lub pliku, zawartość szóstej lini do osobnej zmiennej, a tego po szóstej lini do kolejnej zmiennej, lub pliku. Zmieniasz tą szóstą linię w tej zapasowej zmiennej i po kolei dołączasz do pliku. Mam nadzieję, że się dobrze wyraziłem ;) Może zilustruję przykład: $dane = file('test.txt'); foreach($dane as $linia) { $tab[] = $linia; } $tekst_1 = $tab[1]; $tekst_1 .= $tab[2]; ... $zmienna_pomocnicza = $tab[6]; $tekst_cd = $tab[7]; $tekst_cd .= $tab[8]; ... $zmienna_pomocnicza = 'abc'; #i tutaj wszystko zapisujesz od nowa W tym, co przeczytałem właśnie (zbiór funkcji operujących na plikach i katalogach w PHP), nie ma nic o czymś takim, jakbyś chciał, DJ_ProG. Ale mogłem nie zauważyć :D Użytkownik pbnan edytował ten post 20 maj 2006, 11:33 nad takim rozwiazaniem myslalem, ale postanowilem zapytac, czy nie ma prostszego, moze fputwartosc($plik,$linijka,$wartosc) ;) a może jednak jest? Może coś takiego: w pętli foreach otwierasz plik (nazwa w zmiennej $dane) i zawartość każdej linijki przesyłasz do tablicy $linia. Zawartość przed tą linią szóstą zapisujesz do zmiennej, lub pliku, zawartość szóstej lini do osobnej zmiennej, a tego po szóstej lini do kolejnej zmiennej, lub pliku. Zmieniasz tą szóstą linię w tej zapasowej zmiennej i po kolei dołączasz do pliku. Mam nadzieję, że się dobrze wyraziłem ;) Można podobnie, ale troche krócej: <?php $lines = file('test.txt'); $lines[5] = 'abc'."\n"; file_put_contents('test.txt', join('', $lines)); ?> wlasnie nad tym rozwiazaniem myslalem. A co oznacza join('', $lines) ? |
|||
Sitedesign by AltusUmbrae. |