Sto tentando di eseguire un processo di pulizia dei dati in un array, in particolare convertendo il tempo storico in YYYY-MM-DD.Perché non posso aggiornare i dati in un array con ciclo foreach?
Ho provato questa funzione originariamente:
foreach ($data as $row) {
$row['eventdate'] = date('Y-m-d', $row['eventdate']);
}
echo '<pre>';
print_r($data);
echo '</pre>';
Tuttavia il ciclo foreach non aggiornano i dati quando output.
Il seguente ciclo for ha funzionato:
for ($i=0; $i<count($data); $i++) {
$data[$i]['eventdate'] = date('Y-m-d', $data[$i]['eventdate']);
}
Perché il primo ciclo falliscono e il secondo lavoro? Non sono gli stessi?
Grazie per la spiegazione dettagliata ed esempi! – Choy
@Choy Potresti anche vedere il primo avviso [qui] (http://php.net/manual/en/control-structures.foreach.php). –