Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zwiększanie wartości w tablicy zawartej w pliku tekstowym.
ano
post 20.05.2003, 20:49:08
Post #1





Grupa: Zarejestrowani
Postów: 435
Pomógł: 40
Dołączył: 16.02.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Mam plik dane.txt o takiej treści:
4||Wrocław||Wroc
3||Gdańsk||Gda
42||Kraków||Krak
I nie wiem jak zrobić, żeby po wywołaniu skryptu zwiększał on np. w drugiej linijce wartość 3. Wiem, że trzeba to jakoś zrobić z funkcją explode, ale nie wiem jak :-(.
Pomocy!!!!!!


--------------------
Linkedin | ...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
Jabol
post 20.05.2003, 20:56:43
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


[php:1:fea3148687]<?php
$_2linia=exlpode('||', ($dane=file('path/file')));
$_2linia[0]++;
$dane[1]=implode('||', $_2linia);
file_put_contents('path/file', implode('', $dane));//to działa jak tryb w, czy jak np. w+?
?>[/php:1:fea3148687]
Go to the top of the page
+Quote Post
Grzesiek
post 20.05.2003, 21:01:38
Post #3





Grupa: Zarejestrowani
Postów: 96
Pomógł: 3
Dołączył: 15.04.2003
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Można to zrobić tak:
[php:1:2126c7d1a6]
$plik=file(dane.txt); // zapisuje dane w tablicy
for($i=0; $i<count($plik); $i++) {
list($id, $miasto, $skrot_miasto) = explode("||", $linia[$i]);
if($id==//coś tam dalej
[/php:1:2126c7d1a6]
Jeżeli chcesz to potem, zapisać do pliku to musisz go wyczyścić i jeszcze raz wpisać wszystkie wartości, które masz w tablicy.
[KaMeLeOn]: Proszę używać znaczników [php]...


--------------------
Linux is like wigwam, no windows, no gates and an apache inside.
Mój blog łebmasterski (po angielsku) Web Development Blog.
Go to the top of the page
+Quote Post
ano
post 22.05.2003, 19:17:27
Post #4





Grupa: Zarejestrowani
Postów: 435
Pomógł: 40
Dołączył: 16.02.2003
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Jabol - Twój kod nie działa. Wyskakuje taki komunikat:
Fatal error: Call to undefined function: exlpode() in c:apachehtdocszapisz.php on line 2


--------------------
Linkedin | ...
Go to the top of the page
+Quote Post
rogeros
post 22.05.2003, 19:27:39
Post #5





Grupa: Zarejestrowani
Postów: 97
Pomógł: 0
Dołączył: 10.04.2002
Skąd: Pruszków

Ostrzeżenie: (10%)
X----


[php:1:0fa0d01964]<?php
$_2linia=explode('||', ($dane=file('path/file')));
?>[/php:1:0fa0d01964]

exlpode != explode biggrin.gif


--------------------
Centrale telefoniczne VOIP - www.astrocom.pl
VOIP
Go to the top of the page
+Quote Post
rogeros
post 22.05.2003, 19:38:59
Post #6





Grupa: Zarejestrowani
Postów: 97
Pomógł: 0
Dołączył: 10.04.2002
Skąd: Pruszków

Ostrzeżenie: (10%)
X----


Masz gotowca.

[php:1:df7558512d]<?php
$ktora_linijke_zmienic="2";

$plik=file("dane.txt"); // otwierasz plik
$dane=explode("||",$plik[$ktora_linijke_zmienic]); // dzielisz linijke miedzy "||" czyli $dane[0]=3,$dane[1]=Gdańsk,$dane[2]=Gda
$dane[0]++; // powiekszasz liczbe o 1. w tym przypadku 3+1
$plik[$ktora_linijke_zmienic]=$dane[0]."||".$dane[1]."||".$dane[2]; // łączymy wszystko w jedna linijke.

$plik_zap=fopen("dane.txt","w"); //otwierasz plik dane.txt do zapisu
for($i=0;$i<count($plik);$i++){
fputs($plik_zap,$plik[$i]); //zapisujesz do pliku wszystkie linijki
}
fclose($plik_zap); // zamykasz plik. FINITO

?>[/php:1:df7558512d]


--------------------
Centrale telefoniczne VOIP - www.astrocom.pl
VOIP
Go to the top of the page
+Quote Post
DeyV
post 22.05.2003, 21:36:59
Post #7





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




file_get_contents i file_put_contents - ciekawe funkcje - i jeszce ich nie widziałem.... Ciekawe czemu winksmiley.jpg [pewnie dla tego => (php 4 >= 4.3.0) laugh.gif ]


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
scanner
post 22.05.2003, 21:52:22
Post #8





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Albo są dla PHP5 - Jabol chyba na takim właśnie siedzi.


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
Jabol
post 23.05.2003, 06:25:00
Post #9





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


siedze na php5, ale staram sie podawać rozwiązania dla php4, którego wersje używam 4.3.1
Go to the top of the page
+Quote Post
DeyV
post 23.05.2003, 07:53:30
Post #10





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




to który php to obłsuży, to już sprawa drugoplanowa. Problem jednak w tym, że funkcje te pojawiły się odpiero w najnowżych wersjjach dokumentacji - jestem niemal pewnien, że jeszcze w marzec - kwiecień w chm ich nie było sad.gif (Ciekawe ile takich cacek w ten sposób można przeoczyć.)


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
[fisher]
post 23.05.2003, 09:20:31
Post #11





Grupa: Zarejestrowani
Postów: 151
Pomógł: 0
Dołączył: 4.03.2003

Ostrzeżenie: (0%)
-----


Cytat
Jabol - Twój kod nie działa. Wyskakuje taki komunikat:
Fatal error: Call to undefined function: exlpode() in c:apachehtdocszapisz.php on line 2

Gratuluje poczucia humoru ano


--------------------
Wszystko ... co na świecie interesujące, bierze się z czyichś dziwacznych myśli [David Lynch]
Andrzej Lepper to Kretyn<
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 25.07.2025 - 01:08