Random reeks zonder herhaling
Je kunt een range opgeven en de code maakt dan een array met random getallen die binnen de range vallen zonder dat er een getal dubbel in komt te staan.
Voorbeeld: http://www.paadt.nl/test/range/
Gesponsorde koppelingen
PHP script bestanden
32 reacties op 'Random reeks zonder herhaling'
Gesponsorde koppelingen
je gaat dit niet gebruiken om een reeks van 0-100 op je scherm te plempen, zo laat ik de werking even zien
ik zou dit bijvoorbeeld kunnen gebruiken om een banner rotator te maken maar op maandag wil ik dat bepaalde banners niet voorkomen die op dinsdag weer wel mogen.
omdat de array waar naar gekeken wordt wat er op maandag al geweest is niet van te voren ingevuld hoeft te worden kun je waardes skippen.
en ja dat kan ook op de andere manier, maar je maakt dan wel overbodige items aan.
en ja je kan voor elke dag een array maken en die shuffelen en met foreach nalopen, maar als je een beetje dynamisch wil blijven en je gooit het in een functie waaraan je de waardes die geskipped moeten worden meegeeft in je call zit je naar mijn idee weer beter.
ik zeg niet dat in alle gevallen mijn script beter is en dit voorbeeld is ook maar of the top of my head
ik zou dit bijvoorbeeld kunnen gebruiken om een banner rotator te maken maar op maandag wil ik dat bepaalde banners niet voorkomen die op dinsdag weer wel mogen.
omdat de array waar naar gekeken wordt wat er op maandag al geweest is niet van te voren ingevuld hoeft te worden kun je waardes skippen.
en ja dat kan ook op de andere manier, maar je maakt dan wel overbodige items aan.
en ja je kan voor elke dag een array maken en die shuffelen en met foreach nalopen, maar als je een beetje dynamisch wil blijven en je gooit het in een functie waaraan je de waardes die geskipped moeten worden meegeeft in je call zit je naar mijn idee weer beter.
ik zeg niet dat in alle gevallen mijn script beter is en dit voorbeeld is ook maar of the top of my head
Je wilt het gewoon niet begrijpen geloof ik...
Ik zeg toch heel duidelijk dat dat voorbeeld zomaar uit mijn hoofd was...
Jij stelt een domme vraag en ja die bestaan dus toch... dus krijg je een antwoord dat daarbij past...
Jij vraagt aan de hand van 0-100 op het scherm gooien waarom mijn script beter zou zijn, terwijl ik in mijn eerste reactie al toegaf dat de gegeven manier inderdaad beter daar voor is.
Je kijkt teveel naar het script zijn output, je moet het grotere plaatje zien... nouja moet moet, zou wel zo fijn zijn als je commentaar ergens over gaat geven. Begrijp me niet (weer) verkeerd ik vind het goed om commentaar te krijgen, maar als je te kortzichtig bent om te zien wat ik vertel of gewoon te bedonderd om goed te lezen dan houd het van mijn kant op...
Ik kan best begrijpen dat de admins het script (zoals het hier staat) overbodig vinden door het gegegevn alternatief en misschien dat ik het aan een concreet voorbeeld had kunnen koppelen waardoor het zich duidelijker onderscheidt. Ik zie er wel een aantal handige toepassingen voor die juist op de andere manier omslachtig zijn.
Als ik tijd en zin heb zal ik een toepassing die ik ervoor zie uitwerken en laten zien. Aan de hand van of het script hier nog staat of hij verwijdert is zal ik het hier bij plaatsen of als nieuw iets laten zien.
Iedereen in ieder geval bedankt voor de reacties, ook PHP Newbie ondanks dat ik het idee heb dat je niet de zelfde moeite als mij/anderen hier steekt in het reageren op elkaar.
Ik zeg toch heel duidelijk dat dat voorbeeld zomaar uit mijn hoofd was...
Jij stelt een domme vraag en ja die bestaan dus toch... dus krijg je een antwoord dat daarbij past...
Jij vraagt aan de hand van 0-100 op het scherm gooien waarom mijn script beter zou zijn, terwijl ik in mijn eerste reactie al toegaf dat de gegeven manier inderdaad beter daar voor is.
Je kijkt teveel naar het script zijn output, je moet het grotere plaatje zien... nouja moet moet, zou wel zo fijn zijn als je commentaar ergens over gaat geven. Begrijp me niet (weer) verkeerd ik vind het goed om commentaar te krijgen, maar als je te kortzichtig bent om te zien wat ik vertel of gewoon te bedonderd om goed te lezen dan houd het van mijn kant op...
Ik kan best begrijpen dat de admins het script (zoals het hier staat) overbodig vinden door het gegegevn alternatief en misschien dat ik het aan een concreet voorbeeld had kunnen koppelen waardoor het zich duidelijker onderscheidt. Ik zie er wel een aantal handige toepassingen voor die juist op de andere manier omslachtig zijn.
Als ik tijd en zin heb zal ik een toepassing die ik ervoor zie uitwerken en laten zien. Aan de hand van of het script hier nog staat of hij verwijdert is zal ik het hier bij plaatsen of als nieuw iets laten zien.
Iedereen in ieder geval bedankt voor de reacties, ook PHP Newbie ondanks dat ik het idee heb dat je niet de zelfde moeite als mij/anderen hier steekt in het reageren op elkaar.
dezelfde moeite als mij? Nederlands is schijnbaar ook erg lastig voor je.
Verder help ik hier erg graag mensen, en dat ik volgens mij ook aan mijn aantal forumposts wel te zien. Maar als jij beweert dat ik er niet genoeg moeite in steek, laat ik jouw posts in het vervolg ook maar gewoon links liggen.
Verder help ik hier erg graag mensen, en dat ik volgens mij ook aan mijn aantal forumposts wel te zien. Maar als jij beweert dat ik er niet genoeg moeite in steek, laat ik jouw posts in het vervolg ook maar gewoon links liggen.
Wat zeggen forum posts?
Wat hebben forum posts te maken met het reageren op scripts?
Dat ik er op de vroege morgen een typefout uitgooi kan me aan mijn reet roesten. En als we dan toch op de tour gaan van het kinderachtig afzeiken van typefouten:
"en dat ik volgens mij ook aan mijn aantal forumposts wel te zien"
Mij maakt het verder niet echt veel uit hoor, maar vind het wel knullig dat je mij afzeikt op een typefout en het dan zelf ook doet.
Jij hebt gewoon moeite met lezen wat er staat, ik zeg niets over jou input op het forum.
Blijkbaar laat je mijn post al links liggen, want je reageert totaal niet op wat ik zeg, maar haalt er een typefout uit. Ik herken een trend... Je leest posts het zelfde als dat je naar scripts kijkt of ben ik dan net zo kort door de bocht als jou?
Wat hebben forum posts te maken met het reageren op scripts?
Dat ik er op de vroege morgen een typefout uitgooi kan me aan mijn reet roesten. En als we dan toch op de tour gaan van het kinderachtig afzeiken van typefouten:
"en dat ik volgens mij ook aan mijn aantal forumposts wel te zien"
Mij maakt het verder niet echt veel uit hoor, maar vind het wel knullig dat je mij afzeikt op een typefout en het dan zelf ook doet.
Jij hebt gewoon moeite met lezen wat er staat, ik zeg niets over jou input op het forum.
Blijkbaar laat je mijn post al links liggen, want je reageert totaal niet op wat ik zeg, maar haalt er een typefout uit. Ik herken een trend... Je leest posts het zelfde als dat je naar scripts kijkt of ben ik dan net zo kort door de bocht als jou?
Kijk PHP Newbie, je hebt wel gelijk maar als mike het toch niet wil veranderen blijf er dan ook niet over deurzeuren, het heeft toch geen zin. Je kunt je tijd beter in je site steken en zorgen dat je menu bij het phphulp gedeelte met Firefox stil blijft staan bij mouseover... ;)
Edit (ook offtopic, sorry daarvoor): Ik heb even op je site rondgekeken en het viel me op dat je banner met IE niet transparant is. IE werkt niet zo makkelijk met PNG, daar keeg ik zelf ook last van en daar heb ik dit scriptje voor gebruikt: http://data.netersel.net/png.js. Misschien heb je er iets aan?
Edit (ook offtopic, sorry daarvoor): Ik heb even op je site rondgekeken en het viel me op dat je banner met IE niet transparant is. IE werkt niet zo makkelijk met PNG, daar keeg ik zelf ook last van en daar heb ik dit scriptje voor gebruikt: http://data.netersel.net/png.js. Misschien heb je er iets aan?
Ik gebruik datzelfde script al Koen, maar dat werkt niet voor div achtergronden die in een externe style-sheet staan gedefineerd.
Verder krijgt iedereen toch binnekort een verplichte update naar IE7. Het is wel op te lossen met een alpha filter, maar toch.
Verder blijft het menu hier gewoon stil staan!
Verder krijgt iedereen toch binnekort een verplichte update naar IE7. Het is wel op te lossen met een alpha filter, maar toch.
Verder blijft het menu hier gewoon stil staan!
PHP Newbie:
Haha, tegenwoordig is alles verplicht bij Microsoft.
Van die div achtergrond had ik nog niet gezien. En alpha filter zou inderdaad maar dan wordt het plaatje volgens mij heel groot. Dus dan hebben IE gebruikers gewoon pech... ;)
Van dat menu is raar... zal wel aan mijn resolutie liggen (kijk eens of het wel beweegt als je je scherm kleiner maakt).
Haha, tegenwoordig is alles verplicht bij Microsoft.
Van die div achtergrond had ik nog niet gezien. En alpha filter zou inderdaad maar dan wordt het plaatje volgens mij heel groot. Dus dan hebben IE gebruikers gewoon pech... ;)
Van dat menu is raar... zal wel aan mijn resolutie liggen (kijk eens of het wel beweegt als je je scherm kleiner maakt).
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
$gedaan = array();
$status = 0;
$range = 10;
if(isset($_GET["range"]) && !$_GET["range"] >= "25" && !$_GET["range"] <= "0") { $range = $_GET["range"]; }
while($status == 0){
$waarde = round(rand(1,$range));
if(count($gedaan) == $range){
$status = 1;
} else if(!in_array($waarde, $gedaan)){
array_push($gedaan, $waarde);
echo $waarde.'<br />';
}
}
echo '<p>Random weergeven volgorde van de opgegeven range <b>zonder herhaling</b> (je kan een range opgeven door ?range=# toe tevoegen).</p>';
echo '<p>Totaal aantal = '.$range.'</p>';
?>
$gedaan = array();
$status = 0;
$range = 10;
if(isset($_GET["range"]) && !$_GET["range"] >= "25" && !$_GET["range"] <= "0") { $range = $_GET["range"]; }
while($status == 0){
$waarde = round(rand(1,$range));
if(count($gedaan) == $range){
$status = 1;
} else if(!in_array($waarde, $gedaan)){
array_push($gedaan, $waarde);
echo $waarde.'<br />';
}
}
echo '<p>Random weergeven volgorde van de opgegeven range <b>zonder herhaling</b> (je kan een range opgeven door ?range=# toe tevoegen).</p>';
echo '<p>Totaal aantal = '.$range.'</p>';
?>
ik weet nie of ik het goed gedaan heb maar toch
Om te reageren heb je een account nodig en je moet ingelogd zijn.
- Details
Door:
Mike- 7 jaar geleden
- 590 x bekeken
- Labels
- Geen tags toegevoegd.
- PHP scripts opties
- Overig
- Nieuwste PHP scripts
- PHP script toevoegen


PHP hulp
0 seconden vanaf nu