differenza concreta tra array_rand e shuffle

emanuelevt

Utente Attivo
24 Giu 2009
298
0
0
Qualcuno mi può spiegare qual'è la differenza concreta tra array_rand($array) e shuffle($array);? entrambi non hanno l'univoco scopo di spargere casualmente gli elementi dell'array?
 

MarcoGrazia

Utente Attivo
15 Dic 2009
852
20
28
62
Udine
www.stilisticamente.com
array_rand() prende un array passato per riferimento e poi tu decidi quanti di quei valori vanno "randomizzati", l'esempio sul manuale è chiaro:
PHP:
<?php
$input = array("Neo", "Morpheus", "Trinity", "Cypher", "Tank");
$rand_keys = array_rand($input, 2);
echo $input[$rand_keys[0]] . "\n";
echo $input[$rand_keys[1]] . "\n";
?>
In pratica dice di prendere due valori dall'array $input e mostrarli, se lo modifichi e ci metti un'istruzione print_r($rand_keys) ti dice quali dei cinque valori di $input prende ad ogni chiamata. Predefinito è un solo valore!
Morpheus Tank Array ( [0] => 1 [1] => 4 )
shuffle() invece prende un array completo e lo mescola, non hai il controllo su quanti valori prendere ogni volta, lo fa su tutti arbitrariamente.
 

emanuelevt

Utente Attivo
24 Giu 2009
298
0
0
ti ringrazio per la risposta; ma non riesco a cogliere la differenza pratica poiché è praticamente uguale scrivere:

Codice:
$array=array('emanuele','samantha','giovanni','claudio','pippo');
$x=array_rand($array,2);
echo $x[0]. ' ' . $x[1];

$array2=array('emanuele','samantha','giovanni','claudio','pippo');
shuffle($array2);
echo $array2[0] . ' ' . $array2[1];

anche se raggiunto in modo diverso il risultato non mi cambio; mi potresti dare un esempio pratico per cogliere la differenza sostanziale di queste funzioni?
 
Discussioni simili
Autore Titolo Forum Risposte Data
E Query differenza tra tabelle MySQL 5
A differenza tra account email e ISP presenti in blacklist Posta Elettronica 0
W Differenza tra orari PHP 3
S Differenza date record successivi MS Access 7
Gabriele Visioli Differenza tra hosting e hosting WordPress Hosting 4
S Differenza tra le funzioni include () e require ()? PHP 1
T differenza fra mysql xampp e un mysql server Database 0
U [PHP] Differenza tra amministratore e utente PHP 2
M PHP Arrotondamento minuti in differenza tra due Orari PHP 9
Emix [PHP] Differenza Date + Ore PHP 3
S [PHP] Eseguire differenza su dati SQL presenti sulla stessa colonna PHP 1
V [PHP] Differenza reale tra bindParam e bindValue PHP 8
K Certificato SSL (https) gratuito o a pagamento? che differenza c'è? Server Dedicati e VPS 1
andrea.peo Calcolo differenza fra record attivo e precedente PHP 1
G Calcolo differenza valori provenienti da una tabella PHP 0
giap Classi stili/stili per singoli TAG- differenza- HTML e CSS 2
Z Google: qual'è la differenza tra Popolarità e Autorevolezza di un sito? SEO e Posizionamento 1
M Qual'è la differenza tra Server.Transfer e Response.Redirect? ASP.NET 1
Giacomo92 Differenza tra Webmaster e Web designer? Webdesign e Grafica 2
V Calcolare la differenza tra due date in PHP PHP 1
V Differenza tra operatori == e === in javascript? Javascript 1
felino [C#] Differenza tra ClipboardPasted e ClipboardPasting .NET Framework 2
F differenza tra 2 date PHP 5
M Calcolare differenza temporale tra datetime salvati sui records di una tabella mysql PHP 18
Monital Differenza tra int smallint etc. Database 5
S Differenza data PHP 1
A Differenza tra anteporre o posporre l'operatore di incremento nel ciclo for Javascript 5
C Ma perchè!!!! Differenza visualizzazione con iOS Safari HTML e CSS 2
Shyson Differenza UTF-8 e gli altri HTML e CSS 12
L Reale differenza con il precedente HTML HTML e CSS 1
C Differenza tra due ore PHP 17
PenguinLover Differenza tra detrazioni e deduzioni? Leggi, Normative e Fisco 3
Monital Differenza tra date PHP 8
YellowMan Differenza tra Server Virtuale e Cloud Server Cloud Computing e Cloud Server 1
M Differenza tra precision e scale PHP 2
novello88 Differenza tra include() e require() PHP 18
M [VB.Net] Che differenza c'è tra CType e DirectCast? ASP.NET 1
S Differenza tra queste righe di codice Javascript 2
N Con Google Crome a differenza di Explore i comandi per la musica non funzionano Javascript 0
S Differenza tra orari sballata! PHP 2
G Differenza fra due date PHP 5
M Differenza tra richiesta sincrona e asincrona Ajax 0
emanuelevt differenza tra $array[]='valore' o array_push($array,'valore') PHP 2
SolidSnake4 differenza tra sleep() e microtime() PHP 9
I Differenza data PHP 2
M Differenza tra date e countdown PHP 3
M Differenza tra valori sulla stessa colonna Database 10
A Differenza comportamento tra click mouse e pressione tasto invio Visual Basic 0
borgo italia differenza tra applet e script? Javascript 10
I Differenza tra blog e sito Webdesign e Grafica 12

Discussioni simili