Pagina 1 van 1

if(Dit = 1 of 2 of 3 of 4)

Geplaatst: 27 feb 2005, 21:22
door sukkelaap
is de volgende techniek mogelijk?

if(Dit = 1 of 2 of 3 of 4)

dus dat je dit vergelijkt met 1 zoniet dan met 2 enz.
of moet het echt zo:

if(dit = 1 || dit = 2 || dit = 3 || dit = 4)

Re: if(Dit = 1 of 2 of 3 of 4)

Geplaatst: 27 feb 2005, 21:24
door Bee
sukkelaap schreef:is de volgende techniek mogelijk?

if(Dit = 1 of 2 of 3 of 4)

dus dat je dit vergelijkt met 1 zoniet dan met 2 enz.
of moet het echt zo:

if(dit = 1 || dit = 2 || dit = 3 || dit = 4)
Soms (maar ik weet niet hoe het zit met php) kan je || vervangen door OR

Geplaatst: 27 feb 2005, 21:30
door sukkelaap
ik had geleerd dat je juist i.p.v. OR in php eigenlijk || hoort te gebruiken. Maar eigenlijk was dit niet me vraag het ging om de techniek van:

de eerste met verschillende dingen vergelijken
of
moet je het steeds per paar vergelijken

Geplaatst: 27 feb 2005, 21:32
door Paul

Code: Selecteer alles

if($a == $B || $a == $x OR $a == $c){
Das allemaal goed, maar je kan beter || als OR gebruiken :D

Geplaatst: 27 feb 2005, 21:33
door Unknowlegend

Code: Selecteer alles

if($a == $B OR $a == $x OR $a == $c){
dus dan word het dit? :wink:

Geplaatst: 27 feb 2005, 21:34
door Bee
paulus schreef:

Code: Selecteer alles

if($a == $B || $a == $x OR $a == $c){
Das allemaal goed, maar je kan beter || als OR gebruiken :D
*dan

Geplaatst: 27 feb 2005, 21:41
door sukkelaap
jah maar mijn vraag was dit:

Kan dit ook

if($a == $B || $x || $c || $d){

Geplaatst: 27 feb 2005, 23:56
door mosymuis
Niet direct, maar wel met een klein bruggetje.

Code: Selecteer alles

if( in_array($a, array($B, $x, $c, $d)) ){
Omdat ik dit vaak gebruikte heb ik er een eigen functie voor gemaakt, die sneller is in notatie en bovendien ook arrays kan nagaan.

Code: Selecteer alles

function exists()
{
	$args = func_get_args();
	$nums = func_num_args()-1;
	
	if ( $nums )
	{
		$check = array();
		
		for( $i = 1; $i <= $nums; $i++ )
		{
			$check[] = $args[$i];
		}
		
		if ( is_array($args[0]) )
		{
			$approved = true;
			if ( count($args[0]) )
			{
				foreach ( $args[0] AS $value )
				{
					if ( !in_array($value, $check) )
					{
						$approved = false;
						continue;
					}
				}
			}
			return $approved;
		}
		else
		{
			return in_array($args[0], $check);
		}
	}
	else
	{
		return true;
	}
}
Nu kan je ook dit aanroepen:

Code: Selecteer alles

if( exists($a, $B, $x, $c, $d) ){

Geplaatst: 28 feb 2005, 09:08
door sukkelaap
Bedankt :thumb:

Dit is idd het antwoord op mijn vraag ;)

Geplaatst: 28 feb 2005, 09:29
door Paul
bee schreef:
paulus schreef:

Code: Selecteer alles

if($a == $B || $a == $x OR $a == $c){
Das allemaal goed, maar je kan beter || als OR gebruiken :D
*dan
Nederlands is niet me beste kant :lol: :lol: