Projektowanie stron WWW od podszewki

Artykuły na każdy temat

[PHP] Losowanie elementów z tablicy bez powtarzania się

Dodano 06.10.2009r. o 21:19
Krótko i na temat. Oto prosty skrypt, który wylosuje 5 nie powtarzających się wartości z 20 elementowej tablicy.
Kod:
<?php
// Tworzymy tablice ze zdefiniowanymi liczbami do wylosowania
$cfg['list'] = array_flip(range(121));

// Jeżeli wersja PHP < 4.2.0 wtedy zachodzi potrzeba użycia generator liczb losowych
// srand(floor(time() / (60*60*24)));

// Losowanie
$tmp['random'] = array_rand($cfg['list'], 5); // Drugi parametr odpowiada za ilość elementów, które mają zostać wylosowane
// Sortowanie dla klarowności
sort($tmp['random']);
// Throw
echo implode(', '$tmp['random']);
?>
Więcej informacji na:
http://php.net/manual/pl/function.array-flip.php
http://php.net/manual/pl/function.array-rand.php
http://php.net/manual/pl/function.implode.php
http://php.net/manual/pl/function.range.php
http://php.net/manual/pl/function.sort.php

Komentarze

Publikowane komentarze są prywatnymi opiniami użytkowników serwisu. Serwis nie ponosi odpowiedzialności za treść opinii. W trosce o zachowanie poziomu dyskusji wszystkie komentarze podlegają akceptacji przed ich publikacją dlatego proszę cierpliwie czekać aż komentarz zostanie opublikowany.

Marek

Dodano 08.08.2013r. o 21:54
Dzięki, przydało się, post może trochę stary ale jak widać funkcja dalej potrzebna.

mobilny

Dodano 05.06.2011r. o 19:41
Działa jak błyskawica. Wykorzystałem to sobie do generowania kilku losowych linków do podstron na witrynce (coś a'la chmurka tagów).
Dzięki za upublicznienie tego kodu. Pozdrawiam.

Dodaj komentarz

Zostaw komentarz jeżeli możesz! Nie bądź przysłowiowym botem! Nie bądź obojętny! Ciebie to nic nie kosztuje, a mi sprawi uśmiech na twarzy.
Zezwolono używać: BBCode
Zabroniono używać:
znaczników HTML

(Wymagany)

(Wymagany, niepublikowany)

(Nie wymagana)

Token:

Obrazek dla bota

(Przepisz tylko cyfry!)

(Wymagana)