![]() |
![]() |
![]()
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? |
|
|
![]() |
![]()
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] |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 14:29 |