Normalizzare un CSV
Preso il contenuto di un file CSV ecco una veloce funzione per normalizzarlo per righe e colonne:
function normalize_csv($content){
    $rows = explode(PHP_EOL, $content);
    $cols = [];
    foreach ($rows as $key => $row) {
        $cols[] = explode(';', $row);
    }
    return $cols;
}Si da per assunto che le righe siano divise da un "a capo" (in codice PHP_EOL) mentre le colonne siano divise dal punto-e-virgola ; .
Headers?
Un altra semplice funzione per normalizzarlo con gli headers.
La funzione prende in input il percorso del file e considera lo standard di divisione la virgola ,+
function normalize_csv($file){
    $rows   = array_map('str_getcsv', file($file));
    $header = array_shift($rows);
    $csv    = array();
    foreach($rows as $row) {
        $csv[] = array_combine($header, $row);
    }
    return $csv;
}PreviousOttenere l'url completo in PHPNextOrdinare un array multidimensionale per le chiavi del sottoarray
Last updated
Was this helpful?
