[PHP] import csv files

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • 0528973
  • Registratie: Juni 2003
  • Laatst online: 15-05-2013
Hoi allemaal,

Bijna iedereen weet denk ik wel wat een CSV file is, ik vroeg me echter
af of er ergens online een officiele definitie te vinden is. Als ik op google rondzoek
krijg ik een berg links waar het allemaal gaat over CSV files hoe te importeren met EXCEL ed... Dit is echter niet wat ik zoek.

We zijn hier een soort van CSV Input classe aan het maken om onze Upload Classe heen in PHP.(gewoon file input in html) En ik wilde graag in mijn documentatie een verwijzing naar een officieel document waarin de structuur van een CSV document vaststaat.

Ik weet dat php een mooie functie fgetcsv heeft, maar ik weet van te voren niet hoelang de langste regel is of welke separators ed er gebruikt worden. Dus lezen we het bestandje gewoon binary safe in met fread en gaan het dan zelf, opbreken naar losse regels en losse kolommen.... Opzich allemaal natuurlijk geen probleem, maar het is gewoon makkelijker als je kan aangeven hoe een bestandstype officieel in elkaar steekt. Zeker als mensen dan verkeerde CSV files gaan proberen te uploaden.

Het is namelijk de bedoeling, dat mensen alleen maar hun csv bestand hoeven te selecteren en dan alleen nog maar op verstuur hoeven te klikken en hun csv bestandje wordt netjes ingelezen en geparsed ed.

Oftewel ik moet in alle gevallen zelf uitvogelen wat de separators ed allemaal zijn, hiervoor moet ik het bestand toch zelf openen en op zijn minst de 1ste regel eruit lezen. Nou ja dan kan ik net zo goed in 1 keer alle data inlezen en de fgetcsv functie negeren.

[ Voor 20% gewijzigd door 0528973 op 17-03-2004 10:49 ]

Pascal


Acties:
  • 0 Henk 'm!

  • beetle71
  • Registratie: Februari 2003
  • Laatst online: 09-09 15:24
Weet waar je aan begint :)
Zover ik weet is er geen gestandariseerd CSV, dus je zult dan zelf uit moeten gaan zoeken wat de separator is, op welke manier er gescaped is (en OF...), en of alle velden ingesloten zijn in " of ' of iets anders. Waarbij je dan weer moet zoeken of alleen tekstvelden zijn ingesloten of ook numerieke waardes.
Om het nog maar niet te hebben over verschillende soorten veldtypes..... datumformaat, decimal separator, ( , of - ) etc.

Misschien kun je beter een aantal vormen 'implementeren' en daartegen valideren.

Just my five cents...

Acties:
  • 0 Henk 'm!

  • 0528973
  • Registratie: Juni 2003
  • Laatst online: 15-05-2013
Nu ik idd weer wat verder gezocht heb, denk ik dat ik idd zoiets maar ga doen...
Ik ben nog nergens een "echte" standaard tegengekomen...

Pascal