Forum » Server-Side scripting » Vraag over rand()
Berichten: 258
avatar
Offline Stuur privebericht
Ik heb een vraag over rand();

Als je bijvoorbeeld dit doet:

Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
8
9
10
<?php

$rand 
rand(120);

if(
$rand 10)
{
echo 
"Hoi.";
}

?>


Dan zal hij nooit Hoi aangeven, dit komt dus omdat hij kijkt of $rand meer is dan 10, maar $rand is rand(1,20), dus hier is mijn vraag:

Hoe krijg je dit goed zodat je het wel in een if statement kunt gebruiken ?
12-04-2010 21:22
Dit topic is 79 keer bekeken door 1 verschillende leden
Reacties op: "Vraag over rand()"
1
Rapifia Europe
Berichten: 3719
avatar
Offline Stuur privébericht
Hij geeft wel hoi aan, als de rand() functie een getal hoger dan 10 generereert.
Rand(); is elke keer verschillend.
Vandaar random.

Lars
12-04-2010 21:30
What else?
Berichten: 1180
avatar
Online Stuur privébericht
Even wat meer uitleg:
Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
8
9
$rand rand020);
var_dump$rand );

if ( 
$rand 10 )
{
    
    echo 
'True';
    
}


Output kan zijn:
Quote

int(13) True



Wat ik hiermee wil zeggen is als je rand () gebruikt je een integer krijgt bij de var_dump() krijg je dan ook in dit geval: int(nr) te zien.

Waarom ik dit uitleg omdat ik mensen te vaak gebruik zie maken van de rand function en het dan tussen quotes zet ('' en dan wordt het al gelijk een string en geen integer.

Kijk ook even naar:
http://nl.php.net/manual/en/function.rand.php

en:
http://nl.php.net/manual/en/function.mt-rand.php

helpt je ook
12-04-2010 22:15
Berichten: 258
avatar
Offline Stuur privébericht
Het werkt nu wel, maar nu komt er te staan int() .
13-04-2010 07:33
JustSimpel VOF
Berichten: 840
avatar
Offline Stuur privébericht
jouw eigen script zou ook gewoon moeten werken hoor
13-04-2010 07:35
What else?
Berichten: 1180
avatar
Online Stuur privébericht
die var_dump is alleen om te laten zien dat het in een integer is, die kan je weg halen, ik legde het princiepe van die functie voor je uit, zoals jij het hebt zou het moeten werken.
13-04-2010 11:10
Berichten: 258
avatar
Offline Stuur privébericht
Het werkt . Bedankt . Topic kan gesloten worden .
13-04-2010 20:01
Rapifia Europe
Berichten: 3719
avatar
Offline Stuur privébericht
Wat was het probleempje nu?
13-04-2010 21:01
Berichten: 258
avatar
Offline Stuur privébericht
Ik denk dat ik hem eerst altijd tussen "Quotes" zetten .
16-04-2010 15:57
Reageer op: "Vraag over rand()"
1
Je kan niet reageren omdat je niet bent ingelogd. Inloggen of Aanmelden