Sziasztok !
Biztosan pofon egyszerű a dolog , de ezen molyolok egy ideje.
adott ez a tömb:
Array
(
[0] => Array
(
[a] => 1
[b] => 2
)
[1] => Array
(
[a] => 1
[b] => 3
)
[2] => Array
(
[a] => 2
[b] => 1
)
[3] => Array
(
[a] => 2
[b] => 3
)
[4] => Array
(
[a] => 5
[b] => 3
)
)
Ezt kellene úgy forgatnom , hogy az altömbök közül az a,b pár úgy maradjon meg hogy ha ismétlődik a elem , akkor a magasabb értékű b vel maradjon meg.
Köszi előre is.
- 1358 megtekintés
Hozzászólások
Valami ilyesmire gondoltal?
#!/usr/bin/php
<?php
$t=Array
(
Array("a"=>1,"b"=>2),
Array("a"=>1,"b"=>3),
Array("a"=>2,"b"=>3),
Array("a"=>2,"b"=>1),
Array("a"=>5,"b"=>3),
);
$ujtomb=Array();
$hozzarendeles=Array();
$sorszam=0;
foreach($t as $par)
{
$a=$par['a'];
$b=$par['b'];
if(!array_key_exists($a,$hozzarendeles))
{ //nincs benne, felvesszuk, es megjegyezzuk, hogy hol van ($hozzarendeles tomb)
$hozzarendeles[$a]=$sorszam;
$ujtomb[$sorszam++]=Array("a"=>$a,"b"=>$b);
}
else
{ //mar benne van
if($b>$ujtomb[$hozzarendeles[$a]]['b']) // ha nagyobb, betesszuk az ujat, ha kisebb, keszen vagyunk
{
$ujtomb[$hozzarendeles[$a]]['b']=$b;
}
}
}
var_export($ujtomb);
--
In 2000 years time, historians studying the national census will think we murdered all the Jedi.
- A hozzászóláshoz be kell jelentkezni
Nem , nem egészen , de hülyén is fogalmaztam meg , hogy mit akarok .
Ennek ellenére sikerült megcsinálnom amit akartam a példa alapján.
Köszönöm a segítséget.
+1
- A hozzászóláshoz be kell jelentkezni