Passare da un array ad un array associativo

Ciao a tutti!

Ho un dubbio, possibile passare da un array ad un array associativo?

Mi spiego meglio, ho un array (letto da un file) di questo tipo:

Array ( [0] => pietro,password,
pippo,pelo,
radio,105
)

poi con:

$array = explode(",",$prova);
print_r($array);

ottengo questo array:

Array ( [0] => pietro [1] => password [2] => 
pippo [3] => pelo [4] => 
radio [5] => 105
)

Adesso io vorrei ottenere un array associativo, che abbia come chiave ad esempio pietro e come valore password, e cosi in sequenza, chiave pippo valore pelo, chiave radio valore 105, ho provato con un ciclo for, con due indici diversi ma non riesco ad ottenere il risultato che voglio, vi riporto il codice che ho provato e che mi da errore

$array2 = array();
$cnt = count($array);
$j=0;
for($i=0;$i<$cnt;$i+=2){
$j=$i+1;
$array2[$array[$i]] = $array2[$array[$j]];
}

Mi da questi errori:

Notice: Undefined index: password in X:\XXX\XXX\XXX\PHP\XXX\infoutente.php on line 29

Notice: Undefined index: pelo in X:\XXX\XXX\XXX\PHP\XXX\infoutente.php on line 29

Notice: Undefined index: 105 in X:\XXX\XXX\XXX\PHP\XXX\infoutente.php on line 29

Dove sbaglio? E' possibile farlo? O esiste qualche funzione specifica?

Un saluto a tutti e grazie in anticipo!

inviato 7 anni fa
kawato
X 0 X

Di logica con:

Array ( [0] => pietro,password,
pippo,pelo,
radio,105
)

Che l'array $prova

Potresti fare cos:

$array = explode(",",$prova[0]);

$array2 = array();

$cnt = count($array);
$j=0;
for($i=0;$i<$cnt;$i+=2){
$j=$i+1;
$array2[$array[$i]] = $array2[$array[$j]];
}

Vedi se ti funziona e fa quello che ti interessa.

risposto 7 anni fa
Mario Santagiuliana
X 0 X

Niente..mi da lo stesso risultato!

risposto 7 anni fa
kawato
X 0 X

Con:

Array ( [0] => pietro,password,
pippo,pelo,
radio,105
)

Che l'array $prova

Potresti fare cos:

$array = explode(",",$prova[0]);

$array2 = array();

$cnt = count($array);
$j=0;
for($i=0;$i<$cnt;$i+=2){
$j=$i+1;
$array2[$array[$i]] = $array2[$array[$j]];
}

Vedi se ti funziona e fa quello che ti interessa.

risposto 7 anni fa
Mario Santagiuliana
X 0 X

Cavolo...ho scritto sbagliata la risposta e non posso pi modificarla. Comunque:

Con:

Array ( [0] => pietro,password,
pippo,pelo,
radio,105
)
<?php
$prova = array();
$prova[0] = "pietro,password,pippo,pelo,radio,105";

$array = explode(",",$prova[0]);

$array2 = array();

$j=0;
for($i=0; $i<(count($array)); $i+=2){
  $j=$i+1;
  $array2[$array[$i]] = $array[$j];
}
print $array2;
?>

Avevo sbagliato a dare l'assegnazione di variabile facendo il tuo stesso errore...

risposto 7 anni fa
Mario Santagiuliana
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda