Autor Zpráva
mackopu
Profil
Už se s tím trápím celé odpoledne a nemůžu na to kápnout. Mám tento nefunkční kód...
<?php
$string = "0|1|2*1|2|3*2|4|6";
$pole_dat = explode("*", $string);
for($i=0; $i<count($pole_dat); $i++) {
  $data = explode("|", $pole_dat[$i]);
  $x[] = // chybějící kód ...
}
for($i=0; $i<count($x); $i++) {
  $celkem[] = array_sum($x[$i]);
}
$data_celkem = implode("|", $celkem);
echo $data_celkem;
?>

... přičemž výstupem by měl být součet hodnot na stejných pozicích, oddělených znakem | v jednotlivých částech řetězce, které jsou odděleny znakem *.
tedy v tomto případě 3|7|11.
Skript musí být použitelný pro libovolný počet pozic.

Otevřete mi oči? Díky.
Nox
Profil
foreach( explode("*", $string) as $prvni)
  foreach( explode("|", $prvni) as $i=>$druhy)
    $celkem[$i] += $druhy;

echo implode("|", $celkem);


teda háže to notice, ale to už si opravíš
mackopu
Profil
Díky moc, to je přesně ono! :-)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: