![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 5.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
mam problem z właściwym zapisem do pliku: zawartość plik.txt: 1 2 3 <?php $tab = file("plik.txt"); $tab[0]+=1 $tab[1]+=1 $tab[2]+=1 //teraz chcę zapisać zawartość tablicy do pliku $plik=fopen("wyniki.txt","w+"); for ($i=0; $i<count($tab); $i++) { fputs($plik,$tab[$i]); } ?> w pliku zamiast: 2 3 4 jest: 23 4 Co muszę zrobić aby kolejne wartości były zapisywane w kolejnych wierszach (probowałem "<BR>" "/n" - nic to nie daje) |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 90 Pomógł: 4 Dołączył: 5.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Kod fputs($plik,$tab[$i]); zamień na: Kod fputs($plik,$tab[$i]."\r\n");
-------------------- torrenty
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 5.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
Niestety nic to nie dało:
jak zrobię tak:
to pobiera z pliku: 1 2 3 i zpisuje do pliku też: 1 2 3 Czyli wszystko jest ok ale gdy po drodze zmienię wartość w $tab[] :
to po zapisaniu do pliku: 52 3 zamiast 5 2 3 jeżeli dam "\r\n" to plik wygląda tak: 5 2 3 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Kod <?php $tab = file("plik.txt"); $plik=fopen("wyniki.txt","w+"); for ($i=0; $i<count($tab); $i++) { fputs($plik,($i>0 ? "\r\n" : '').($tab[$i] + 1)); } ?> a teraz \r\n lub \n w zaleznosci od tego czy masz winde czy linuxa -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
a teraz \r\n lub \n w zaleznosci od tego czy masz winde czy linuxa lub \r jeśli mac ![]() -------------------- Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Przyjaciele php.pl Postów: 1 112 Pomógł: 20 Dołączył: 10.04.2005 Ostrzeżenie: (0%) ![]() ![]() |
kontynuując: lub stała PHP_EOL jeśli chcesz mieć w nosie różnice międzysystemowe dotyczące znaku nowej linii :)
pozdr. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 5.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
Jest ok., sprytne rozwiązanie
![]() Tylko mam takie dziwne wrażenie że likwiduje to skutek a nie przyczynę, ale spoko najważniejsze że działa, ciekawe tylko że jak wpiszę: zamiast ...($tab[$i] + 1)); (nie chcę zwiększać wartości z tabeli o 1) ...($tab[$i])); to znowu dostaję zapis z przerwami ale jak napiszę: ...($tab[$i] + 0)); to wszystko jest ok. ale jaja. pozdrawiam i dzięki za pomoc. |
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
zadne jaja. file() zwraca ci tablice ze znakiem konca wiersza w kazdym elemencie. Gdy robisz dodawnaie, to znak konca wiersza jest pomijany gdyz wartosc jest konwertowana na int. Gdy nic nie robisz, to wkladasz do pliku element ze znakiem konca wiersza + dodatkowo sam dokladasz ten znak
![]() edit: to skoro nie chcesz zmieniac wartosci to nie lepiej skopiowac plik przy pomocy copy() ? -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 13 Pomógł: 0 Dołączył: 5.12.2006 Ostrzeżenie: (0%) ![]() ![]() |
teraz wszystko jasne, dzięki.
Cytat edit: to skoro nie chcesz zmieniac wartosci to nie lepiej skopiowac plik przy pomocy copy() ? zmieniać to będę ale w połączeniu z formularzem, a chodziło mi jedynie żeby zapisywał do pliku dokładnie tak jak chcę. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 21.06.2025 - 23:09 |