[PHP] Warunek: wszystkie zmienne różne


(ziggurad) #1

Gdy mam trzy zmienne: i,j,k żeby wykonać jakiś fragment kodu tylko wtedy gdy są różne muszę napisać:

If (($i <> $j) && ($i <> $k) && ($j <> $k)) {

(...)

}

Czy jest jakiś sposób skrócenia tego? Bo dla 4 zmiennych kod jeszcze mogę napisać... Ale w moim programie będę musiał wykonywać fragmenty kodu tylko wtedy gdy będą się różniły 12, 13, 14 zmiennych...

Zna ktoś może jakieś rozwiązanie :>

Proszę o pomoc :wink:

Z góry dziękuję :wink:


(Michalskokowski) #2

Spróbuj dać wszystkie zmienne do tablicy i przed warunkiem i przeleciec po niej petla:

$rozne=1; //na poczatku przyjmujemy ze wszystkie sie roznia

for ($i=0;$i<$liczba_zmiennych;$i++){ //lecimy po kazdej zmiennej

    for ($j=1;$j<$liczba_zmiennych;$j++){

    if($i != $j){ //zebysmy nie sprawdzili tej samej zmiennej z ta sama zmienna

          if ($tablica_ze_zmiennymi[$i]==$tablica_ze_zmiennymi[$j]){

               $rozne=0; //zaznaczamy ze jakies 2 zmienne sa takie same

          }

    }


   }

}

(Airborn) #3

prościej chyba będzie zrobić:

if( count(array_unique($tablica)) == count($tablica) );

oczywiście mając wszystkie zmienne w tablicy $tablica