Originariamente inviato da W Thunderbird
Il fatto è concettualmente diverso e si risolve con un array_combine.
Mi sbagliavo. Non si risolve con array_combine.
Originariamente inviato da filippo.toso
Convinto tu.
Senza rancore. Io sto ancora imparando. Ammetto che la mia affermazione "Il flip non cambia nulla" è errata ma non era la funzione che serviva in quel punto.
Il comando array flip serve a scambiare gli indici e le variabili contenute nell'array.
Esempio:
Array partenza (indice -> variabile):
0->a
1->b
Array dopo il flip (indice -> variabile):
a->0
b->1
Quindi non serviva per il mio caso.
Nel mi caso si ha:
- un array (estratto con array_rand) che contiene gli indici degli elementi scelti
- una array (quello ri partenza) che contiene gli elementi tra cui scegliere
Il problema è come ottenere un array che contenga gli elementi scelti.
Possibile che non ci sia una funzione integrata ?
io ho risolto con il classico for che scrive un array sostituiendo gli indici per ottenere l'elemento scelto.
Codice PHP:
<?php
class Number{
function __construct($min,$max,$num) {
$select=range($min, $max);
$this->a=array_rand($select, $num);
for($i=0;$i<$num;$i++) {
$this->extract[$i] =$select[$this->a[$i]];
}
}
function printt(){
echo("Vettore degli indici elementi scelti:
");
print_r($this->a);
echo("
Vettore degli elementi scelti:
");
print_r($this->extract);
}
}
$min = 1;
$max = 20;
$num = 5;
$numero= new Number($min,$max,$num);
$numero->printt();
?>
Comunque mi sembra strano che non esista un funzione integrata per ottenere un vettore fornendo un vettore di indici e un vettore di dati.