Curs Php-mysql

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
Ce atribut e folosit in tag-ul <img> pentru adresa imaginii?
href src rel
<img src="http://coursesweb.net/imgs/webcourses.gif" width="191" height="63" alt="Courses-Web" />
Care din aceste coduri CSS ascunde elementul in pagina?
display: none; display: inline; position: relative;
#id {
  display: none;
}
Ce instructiune opreste executia lui while() sau for() ?
continue prompt() break
for(var i = 0; i< 8; i++) {
  if(i > 1) break;
  alert(i);
}
Indicati functia utilizata pentru a crea constante.
define() include() defined()
define("CONSTANT_NAME", "value");
echo CONSTANT_NAME;
Care este forma de plural a substativului "class" (clasa)?
classes clases clasis
This school has three classes.
- Scoala asta are trei clase.
Care este pluralul substativului "voz" (voce)?
vose voze voces
Escuché dos voces.
- Am auzit doua voci.
Numere aleatoare

Last accessed pages

  1. Viitor simplu - Exercitii si teste incepatori (12539)
  2. Ser - Estar 2 (3520)
  3. Numerale, Numere in limba engleza - Numerals (53491)
  4. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (279177)
  5. Pronumele in limba engleza - Pronouns (55057)

Popular pages this month

  1. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (556)
  2. Gramatica limbii spaniole. Indrumator si prezentare generala (286)
  3. Gramatica limbii engleze - Prezentare Generala (278)
  4. Coduri pt culori (215)
  5. Cursuri limba engleza gratuite si lectii online (203)