Ik ben bezig met het maken van een CSV-parser. Om n.a.w-gegevens vanuit Office makkelijk in de database op het intranet van een bedrijf te kunnen zetten.
Nu heb ik een aantal kleine testscriptjes geschreven om te kijken hoe het parsen van de CSV-data zou gaan. Alleen gaat PHP erg vaak totaal over zijn nek. Het script begint met laden en IE doet een refresh en het begint weer opnieuw. Zo gaat dit een kleine minuut door waarna ik een mooie 404 error voorgeschoteld krijg.
Het voorbeeldbestand is 38533 tekens lang en er zijn 313 rijen met gegevens.
Een voorbeeldje:
Manieren die ik heb geprobeerd:
Resulteerde in de reload-loop
Zelfde probleem
Zelfde probleem.
Ik vraag me dus af wat de oorzaak is van dit probleem en hoe ik het oplos.
Nu heb ik een aantal kleine testscriptjes geschreven om te kijken hoe het parsen van de CSV-data zou gaan. Alleen gaat PHP erg vaak totaal over zijn nek. Het script begint met laden en IE doet een refresh en het begint weer opnieuw. Zo gaat dit een kleine minuut door waarna ik een mooie 404 error voorgeschoteld krijg.
Het voorbeeldbestand is 38533 tekens lang en er zijn 313 rijen met gegevens.
Een voorbeeldje:
code:
1
2
| userid,gebruikersnaam,voornaam,voorletters,achternaam 1,ppuk,Pietje,P.,Puk |
Manieren die ik heb geprobeerd:
PHP:
1
2
3
4
5
6
7
8
9
10
| <?php $fp = fopen ("Medewerkers.csv", "r"); $fs = fread ($fp, filesize ("Medewerkers.csv")); fclose ($fp); $array = explode ("\n", $fs); echo "<pre>"; print_r ($array); echo "</pre>"; ?> |
Resulteerde in de reload-loop
PHP:
1
2
3
4
5
6
7
8
| <?php $fp = fopen ("Medewerkers.csv", "r"); echo "<pre>"; while ($data = fgetcsv ($fp, 1000, ",")) { print_r ($data); } fclose ($fp); |
Zelfde probleem
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| <?php $fp = fopen ("Medewerkers.csv", "r"); $fs = fread ($fp, filesize ("Medewerkers.csv")); $array = explode ("\n", $fs); echo "<table>"; for ($i = 0; $i < count ($array); $i++) { $output[$i] = explode (",", $array[$i]); echo "<tr>"; for ($j = 0; $j < count ($output[$i]); $j++) { echo "<td>" . $output[$i][$j] . "</td>"; } echo "</tr>\n"; } echo "</table>"; |
Zelfde probleem.
Ik vraag me dus af wat de oorzaak is van dit probleem en hoe ik het oplos.
[ Voor 16% gewijzigd door Tux op 21-08-2003 15:33 ]
The NS has launched a new space transportation service, using German trains which were upgraded into spaceships.