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 HTML5 defineste un text marcat, evidentiat?
<mark> <embed> <span>
<p>Cursuri graruite: <mark>MarPlo.net</mark> , jocuri, anime.</p>
Ce pseudo-clasa CSS defineste un stil la element cand mouse-ul e deasupra lui?
:focus :hover :active
a:hover {
  font-weight: bold;
  color: #00da01;
}
Clic pe functia ce returneaza un sir cu un numar rotunjit la x decimale.
toPrecision(x) toFixed(x) floor(x)
var num = 12.34567;
num = num.toFixed(2);
alert(num);       // 12.35
Indicati functia PHP care adauga continutul unui fisier intr-un array.
[) file() readfile()
$arr = file("a_file.txt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
var_export($arr);
Clic pe raspunsul potrivit la intrebarea: "What time is it?"
On the 7th of July 1996 It is a quarter to 5. Nice weather.
What time is it? It is a quarter to 5.
- Cat este ora? E 5 fara un sfert.
Indicati raspunsul potrivit la intrebarea: "¿Qué hora es?"
Hace buen tiempo. En el 7 de julio de 1996 Son las tres menos cuarto.
¿Qué hora es? Son las tres menos cuarto.
- Cat este ora? E 3 fara un sfert.
Numere aleatoare

Last accessed pages

  1. Conditional IF in Limba Engleza - Fraze Conditionale (59057)
  2. Curs si Tutoriale JavaScript (51187)
  3. Subjunctivul 2 (791)
  4. Gramatica limbii spaniole. Indrumator si prezentare generala (36694)
  5. Adjectivul in limba engleza - The adjective (14760)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (1585)
  2. Curs HTML gratuit Tutoriale HTML5 (1189)
  3. Curs PHP MySQL, Tutoriale si Scripturi PHP (1140)
  4. Curs si Tutoriale Ajax (1053)
  5. Curs si Tutoriale JavaScript (1048)