Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Zapisywanie do początku pliku tekstu
Forum PHP.pl > Forum > Przedszkole
Login
Chcę zapisywać dane do pliku tak żeb za każdm razem dane, które zapiszę zapisały się na początku pliku. Początkowo myślałem, że użję do tego funkcji "r+"
Ale co się okazało. Dane zapisują się na początek pliku, ale dokładnie te dane nadpisują się do danych, które wcześniej zapisałem. I mśyślę, że to może mieć związek z tzw. "wskaźnikiem wewnęrznm pliku". I właśnie czy dało by się, żeby dane bły dopisane dosłownie na początek pliku. I używam takiego skrptu
  1. <?
  2. $file = fopen('news.txt', 'r+');
  3. fwrite($file, tekst);
  4. fclose($file);
  5. ?>

który zapisuje do pliku "news.txt" słowo "tekst" I właśnie chcę, żeby za każdym razem jak użyję tego skrpta dopisywało się słowo "tekst"
strife
  1. <?php
  2.  
  3. $file = 'example.txt';
  4. $open = fopen($file, &#092;"r\");
  5. $read = fread($open, filesize($file));
  6.  
  7. $tresc = 'poczatek';
  8.  
  9. $calosc = $tresc.$read;
  10.  
  11. $open = fopen($file, &#092;"w+\");
  12. $write = fwrite($open, $calosc);
  13.  
  14. ?>

Może jakos tak, nie wiem czy działa pisałem na szybko.. Zasada jest taka, wczytujesz calosc pliku nastepnie na jego poczatek (stringa) dopisujesz $tresc.. calosc zapisujesz do pliku...

Pozdrawiam!
Majdan
Poszukaj, były gotowe kody...

scarface, można też od razu nadpisać, bez wczytywania zawartości pliku, co jest niepraktyczne.
FiDO
Generalnie dopisywanie na poczatek pliku nie jest dobrym pomyslem.. do czego to potrzebujesz konkretnie?

Jak chcesz to koniecznie zrobic to albo stworzysz nowy plik, zapiszesz do niego to co chcesz dopisac i dalej dopiszesz zawartosc orginalnego pliku, po czym przeniesiesz ten nowoutworzony plik na miejsce starego albo wczytasz plik za pomoca file" title="Zobacz w manualu PHP" target="_manual, dodasz na poczatek otrzymanej tablicy tekst, ktory chcesz dopisac i zapiszesz ja do pliku.
Majdan
FiDO, można też przez rewind" title="Zobacz w manualu PHP" target="_manual();.
Dawno, dawno, temu...

  1. <?php
  2. $dane=&#092;"jakieś dane do dodania\";
  3. $plik=&#092;"plik.txt\";
  4. $fp=fopen($plik, &#092;"r+\");
  5. rewind($fp);
  6. flock($fp, 2);
  7. fputs($fp, $dane);
  8. flock($fp, 3);
  9. fclose($fp);
  10. ?>
FiDO
Niestety sie mylisz.. zobacz co wykona ten kod smile.gif
M45t3r
To o co mi chodziło ! biggrin.gif
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.