Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Sumowanie danych na 2 plikach
piotrdd2
post 26.06.2003, 19:16:39
Post #1





Grupa: Zarejestrowani
Postów: 136
Pomógł: 2
Dołączył: 13.05.2003
Skąd: Przemyśl

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


Mam dwa pliki, zapisane są w nich dane np. w takim stylu:

Pierwszy plik:
5|^^^|Adam
8|^^^|Bartek
1|^^^|Kamil

Drugi plik:
2|^^^|Bartek
1|^^^|Adam
3|^^^|Wojtek
8|^^^|Kamil

Plik pierwszy i drugi mogą zawierać różną ilość danych, w pliku pierwszym może być np. login Ziomek i odpowiadająca jemu liczba, a w drugim już tego loginu nie będzie – lub odwrotnie.

Chodzi mi o to jak zrobić aby zsumowało liczby według odpowiadających im loginów

tzn.
6|^^^|Adam
10|^^^|Bartek
9|^^^|Kamil
3|^^^|Wojtek

Jakich do tego trzeba użyć funkcji?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
evo
post 30.06.2003, 08:54:22
Post #2





Grupa: Zarejestrowani
Postów: 110
Pomógł: 0
Dołączył: 4.02.2003

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


tu masz poprawiony moj kod:

[php:1:05ce631167]<?php
$separator='|^^^|';
$p1=file('plik1.txt');
$p2=file('plik2.txt');
$result=array();
foreach($p1 as $k1=>$v1){
$ex1=explode($separator,$v1);
foreach($p2 as $k2=>$v2){
$ex2=explode($separator,$v2);
if($ex1[1]==$ex2[1]){
$result[]=($ex1[0]+$ex2[0]).$separator.$ex1[1];
unset($p1[$k1]);
unset($p2[$k2]);
}
}
}
$result=array_merge($p1,$p2,$result);

print_r($result);
?>[/php:1:05ce631167]


Cytat
W moim skrypcie znajduje się polecenie exit;, myśle że dla tego nie przetważa kolejnych zmiennych!
Czy można je jakims innym poleceniem zastąpić aby nadal zatrzymywał, ale żeby powrócił na początek i pobrał następny login??


mozna uzywajac petli while() w ten sposob:
[php:1:05ce631167]<?php
while(true){
//jakis kod

//tu chcesz powrucic do poczatku
continue;


//tu chcesz przerwac
break;


}
?>[/php:1:05ce631167]
Go to the top of the page
+Quote Post

Posty w temacie


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: 14.08.2025 - 14:29