Ca sa obtineti un numar aleator in PHP, se poate folosi functia mt_rand() (exista si functia rand(), dar conform documentatiei PHP, mt_rand() e mai rapida).
- Exemplu:
$nr = mt_rand();
echo $nr;

• Ca sa obtineti numarul aleator dintre un numar minim si maxim, se foloseste aceasta sintaxa:   mt_rand($min, $max).
$nr = mt_rand(1000, 9999);
echo $nr;

Numere aleatoare din array

Daca aveti un array cu numerr si vreti sa obtineti un numar aleator din acel array, se poate aplica functia array_rand(). Aceasta functie returneaza cheia unui element din array ales aleator.
- Exemplu:
$nrs = array(123, 567, 4556, 34245, 78);
$rk = array_rand($nrs);
$nr = $nrs[$rk];
echo $nr;       // 4556

• Daca vreti sa alegeti mai mult de o cheie din array, adaugati un al doilea argument, care reprezinta numarul de chei (mai mic decat numarul de elemente din acel array). In acest caz, array_rand($array, $nrk) va returna un array cu $nrs numere de chei aleatoare din $array.
$nrs = array(123, 567, 4556, 34425, 78, 789);
$rks = array_rand($nrs, 2);     // contine 2 chei aleatoare (2, 5)

echo $nrs[$rks[0]];      // 4556
echo $nrs[$rks[1]];      // 789

Numar aleator cu cifre distincte

Daca vreti sa obtineti un numar aleator dintre un minim si maxim, dar cu cifre distincte, fara ca vreo cifra sa se repete in numarul ales aleator, puteti folosi urmatoarea functie.
<?php
// returneaza un numar aleator intre $min si $max, cu cifre distincte
function getDistinctNr($min, $max) {
 // obtine numar aleator cu cifre diferite ( www.coursesweb.net )
  $nrstr = (string) mt_rand($min, $max);     // numar aleator transformat in sir
  $n_nr = strlen($nrstr);           // numarul de caractere
  $setnr = array();           // va retine cifrele ce formeaza numarul aleator returnat

  // parcurge caracterele din $nrstr ca sa retima in $setnr doar cifrele distincte
  // daca cifra e deja in $setnr, parcurge numerele de la 0 la 9 ca sa o inlocuiasca cu alt numar distinct
  for($i=0; $i<$n_nr; $i++) {
    if(!in_array($nrstr[$i], $setnr)) $setnr[] = $nrstr[$i];
    else {
      for($i2=0; $i2<10; $i2++) {
        if(!in_array($i2, $setnr)) {
          $setnr[] = $i2;
          break;
        }
      }
    }
  }

  return implode('', $setnr);
}

// Test
$nr = getDistinctNr(1000, 9999);
echo $nr;
?>

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care tag creaza un text ingrosat?
<q> <strong> <em>
<p>Adresa: <strong>http://CoursesWeb.net/</strong> - Tutoriale.</p>
Care din aceste coduri CSS afiseaza textul ingrosat?
text-size: 18px; font-style: italic; font-weight: 800;
#id {
  font-weight: 800;
}
Ce functie JavaScript apeleaza o alta functie, in mod repetat, la un anumit interval de timp?
setInterval() setTimeout() push()
function someFunction() { alert("CoursesWeb.net"); }
setInterval("someFunction()", 2000);
Clic pe variabila definita corect in PHP.
var vname = 8; $vname = 8; $vname == 8;
$vname = 8;
echo $vname;
Care din urmatoarele forme ale verbului "travel" (a calatori) e la timpul Prezent Perfect?
have traveled shall travel had traveled
We have traveled in space.
- Noi am calatorit (deja) in spatiu.
Care din urmatoarele forme ale verbului "pintar" (a picta) se foloseste la Trecutul Imperfect?
ir a pintar pintaba pintó
La niña pintaba un arco iris.
- Fetita picta un curcubeu.
Numere aleatoare

Last accessed pages

  1. Curs si Tutoriale JavaScript (22214)
  2. Gramatica limbii spaniole. Indrumator si prezentare generala (28334)
  3. Verbe regulate (2934)
  4. Limba spaniola curs online incepatori si avansati (13870)
  5. Curs si Tutoriale Ajax (10031)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (6273)
  2. Curs HTML gratuit Tutoriale HTML5 (5256)
  3. Curs si Tutoriale JavaScript (4649)
  4. Curs PHP MySQL, Tutoriale si Scripturi PHP (4527)
  5. Curs CSS Online Tutoriale CSS3 (4367)