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

Praat mee over van alles en nog wat!
Forumregels
Dit forum is voor alle zinnige gesprekken buiten phpBB om. Discussies en gesprekken over interessante onderwerpen.

Een nieuw onderwerp moet..:
  • uiteraard voldoen aan de algemene voorwaarden
  • niet passen in de gewone supportfora
  • interessante zijn voor het overgrote deel van onze gebruikers
  • een neutrale of positieve ondertoon hebben
  • anders zijn dan bestaande onderwerpen
Plaats reactie
sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

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

Bericht door sukkelaap » 27 feb 2005, 21:22

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)

Gebruikersavatar
Bee
Berichten: 13403
Lid geworden op: 29 aug 2004, 10:30

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

Bericht door Bee » 27 feb 2005, 21:24

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
... Maar ik modereer (nog) niet.

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 27 feb 2005, 21:30

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

Gebruikersavatar
Paul
Beheerder
Beheerder
Berichten: 20316
Lid geworden op: 23 okt 2003, 11:38
Locatie: Utrecht
Contacteer:

Bericht door Paul » 27 feb 2005, 21:32

Code: Selecteer alles

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

Unknowlegend
Berichten: 80
Lid geworden op: 25 feb 2005, 19:47

Bericht door Unknowlegend » 27 feb 2005, 21:33

Code: Selecteer alles

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

Gebruikersavatar
Bee
Berichten: 13403
Lid geworden op: 29 aug 2004, 10:30

Bericht door Bee » 27 feb 2005, 21:34

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
... Maar ik modereer (nog) niet.

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 27 feb 2005, 21:41

jah maar mijn vraag was dit:

Kan dit ook

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

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 27 feb 2005, 23:56

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) ){

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 28 feb 2005, 09:08

Bedankt :thumb:

Dit is idd het antwoord op mijn vraag ;)

Gebruikersavatar
Paul
Beheerder
Beheerder
Berichten: 20316
Lid geworden op: 23 okt 2003, 11:38
Locatie: Utrecht
Contacteer:

Bericht door Paul » 28 feb 2005, 09:29

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:

Plaats reactie