Autor Zpráva
Truvnik
Profil *
Mam tento kod:

$listBarevItemu = "*1*5*9*";

$seznamBarev  = array (
"1" => "čirá", 
"2" => "bílá",
"3" => "smetanová", 
"4" => "žlutá",
"5" => "oranžová", 
"6" => "červená",
"7" => "růžová", 
"8" => "bordó",
"9" => "fialová", 
"10" => "tyrkysová"
);

foreach ($seznamBarev as $a=>$b) { 
    $pocetBarev = substr_count($a, $listBarevItemu); 
    echo "$pocetBarev - $a - $listBarevItemu <br />";
    if ($pocetBarev > 0) {
      echo $a . "<br />"; 
    }
 } 


a bohuzel prvni echo my vypise jen toto:
0 - 1 - *1*5*9*
0 - 2 - *1*5*9*
0 - 3 - *1*5*9*
0 - 4 - *1*5*9*
.....

a druhy nic... Kde je chyba? A je nejaka lepsi funkce na vyhledavani v retezci?
tiso
Profil
Truvnik: máš prehodené parametre pre substr_count() na riadku 17
Okrem toho budeš mať problém pri väčšom počte farieb.
AM_
Profil
bude mít problém už teď, protože "1" se vyskytuje i v "10".
Mimochodem, celé toto řešení je strašně krkolomné, sice nevím, k čemu to používáš, ale většina mechanických věcí lze udělat, aniž bys musel rozpitvávat řetězce
petr 6
Profil
AM:
bude mít problém už teď, protože "1" se vyskytuje i v "10".
Může použít toto
substr_count($listBarevItemu, "*".$a."*")

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: