Grazie per la risposta.
Ho corretto il codice, semplificandolo anche:
Codice PHP:
if (array_key_exists($professionista, $array_N_accessi_operatori)) {
//il professionista già esiste, quindi incremento solo il contatore di una unità, in base ai minuti
$array_N_accessi_operatori[$professionista][$minuti_accesso]++;
} else {
//inserisco il nuovo professionista, imposto i contatori a 0 ed inserisco la professione
$array_N_accessi_operatori[$professionista] = ["15" => 0, "30" => 0, "45" => 0, "60" => 0, "professione" => $professione];
//aumento di una unità il contatore in base ai minuti
$array_N_accessi_operatori[$professionista][$minuti_accesso]++;
}
I dati vengono inseriti e gli incrementi funzionano, ma penso di aver un altro problema. Nel fare il print dell'array, ho notato che dopo i 4 nomi dei professionisti presenti, viene mostrato per 4 volte il secondo professionista.
codice:
Array ( [VERDI MARIO] => Array ( [15] => 0 [30] => 0 [45] => 0 [60] => 8 [professione] => Fisioterapista ) [ESPOSITO CRISTINA] => Array ( [15] => 0 [30] => 6 [45] => 0 [60] => 2 [professione] => Infermiere ) [BIANCHI GIULIO] => Array ( [15] => 0 [30] => 0 [45] => 0 [60] => 6 [professione] => Fisioterapista ) [ROSSI MARA] => Array ( [15] => 0 [30] => 0 [45] => 0 [60] => 10 [professione] => Operatore socio-sanitario ) [1] => ESPOSITO CRISTINA [2] => ESPOSITO CRISTINA [3] => ESPOSITO CRISTINA [4] => ESPOSITO CRISTINA)
La cosa strana è che quando vado a visualizzare il contenuto dell'array in una tabella, mi riporta per 4 volte sempre lo stesso nome, anche se poi, i dati mostrati sono corretti e rispecchiano quelli inseriti:
Infermiere |
ESPOSITO CRISTINA |
0 |
6 |
0 |
2 |
Infermiere |
ESPOSITO CRISTINA |
0 |
6 |
0 |
2 |
Infermiere |
ESPOSITO CRISTINA |
0 |
6 |
0 |
2 |
Infermiere |
ESPOSITO CRISTINA |
0 |
6 |
0 |
2 |
Sicuramente sbaglio perché, per leggere l'array, utilizzo un ciclo for:
Codice PHP:
$n_dati = count($array_N_accessi_operatori);
for ($j = 1; $j <= $n_dati; $j++) {
//stranamente, anche se tolgo l'indice $j
//mi da' comunque il nome del professionista $prof = $array_N_accessi_operatori[] = $professionista;
$prof = $array_N_accessi_operatori[$j] = $professionista;
$acc_30 = $array_N_accessi_operatori[$professionista]['30'];
}
Il problema però penso sia a monte e non in fase di lettura