sql >> Database >  >> RDS >> Mysql

hoe een csv-bestand in jQuery te lezen met behulp van het codeigniter-framework

Ik gebruik deze bibliotheek om arrays naar een ander gegevensformaat te converteren of omgekeerd.

CI - Restserver

Daar kun je bibliotheek/klasse-indeling (Format.php) vinden die je kunt gebruiken om CSV naar array te converteren en vervolgens op te slaan in je database. Deze klasse ondersteunt ook andere indelingen:

  • xml – bijna elke programmeertaal kan XML lezen
  • json – handig voor JavaScript en steeds meer PHP-apps.
  • csv – openen met spreadsheetprogramma's
  • html – een eenvoudige HTML-tabel
  • php – Vertegenwoordiging van PHP-code die kan worden eval()'ed
  • serialiseren – Geserialiseerde gegevens die in PHP kunnen worden gedeserialiseerd

BEWERKEN:

Deze bibliotheek werkt op CSV met scheidingsteken "\n" op elke rij en "," op elke kolom, u kunt het als volgt gebruiken:

$this->load->library('format');

$string_csv = "YOUR CSV";        
$result = $this->format->factory($string_csv, 'csv')->to_array();

var_dump($result);

Zo simpel. Maar zoals ik hierboven al zei, als je een ander scheidingsteken hebt, moet je de bibliotheek naar behoefte aanpassen. Hier de belangrijkste functie om CSV naar array te converteren:

function _from_csv($string)
{
    $data = array();

    // Splits
    $rows = explode("\n", trim($string));
    $headings = explode(',', array_shift($rows));
    foreach ($rows as $row)
    {
        // The substr removes " from start and end
        $data_fields = explode('","', trim(substr($row, 1, -1)));

        if (count($data_fields) == count($headings))
        {
            $data[] = array_combine($headings, $data_fields);
        }
    }

    return $data;
}

BEWERK 2:

Mijn voorbeeld werkt op dit standaard CSV-formaat:

Heading1, Heading2, Heading3
"1","John","London"
"2","Brian","Texas"


  1. Gegevensaggregatie mongodb vs mysql

  2. Woocommerce:gebruikers kunnen een product slechts één keer kopen

  3. gegevens uit database weergeven in vervolgkeuzelijst CodeIgniter

  4. Hoe TIMESTAMPDIFF() werkt in MariaDB