Autor Zpráva
kirisek95@gmail.com
Profil
Zdravím lidi,

už několik hodin řeším, jak udělat větvení podmínek podle velikosti pole

dejme tomu, že mám pole:
$a[10]=(0,1,2,3,4,5,6,7,8,9)

for($i=0;$i<count($a);$i++)
{
  if($a[0]==$i)
  {
    echo $i;
  }
  elseif($a[1]==$i)
  {
    echo $i;
  }
  elseif($a[2]==$i)
  {
    echo $i;
  }
  elseif($a[3]==$i)
  {
    echo $i;
  }
  .
  .
  .
 atp.
  else echo "-";
}

nejspíš to tu mám s chybami (a deklaraci pole jsem hodně zjednodušil :D), ale nejde mi o chyby v zápisu, jde mi o předělání zápisu, aby se větev s podmínkami "vygenerovala" sama, jelikož velikost pole není závislá na mě, ale obsah pole se bere z databáze.

Díky moc
Tori
Profil
To vypadá nějak děsně komplikovaně. Nestačilo by prostě použít cyklus foreach?
for ($i = 0; $i < count($a); $i++) {
    $vystup = '-';  // výchozí hodnota, když $i nebude nalezené ve vnořeném poli $a[$i]
    foreach ($a[$i] as $cislo) {  // tady procházím všechny prvky vnořeného pole 
        if ($cislo == $i) {  // a pokud najdu shodný
            $vystup = $i;  // změním hodnotu, která se má vypsat
            break;  // a ukončím procházení vnořeného pole
        }
    }
    echo $vystup;  // vypíše buď $i nebo minus
}
kirisek95@gmail.com
Profil
Jo díky :) funguje to, ale jaksi jsem zapomněl zmínit, že se k tomu poli váže ještě několik dálších polí =DD

Ale nakoplo mě to :)) už to funguje krásně (vyřešil jsem to nahrazením foreach za další cyklus for) :) díky MOC

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:

0