Parser un fichier txt pour remplir une table: optimisation ?
Bonjour à tous,
Je dois parser un txt de 35 000 lignes environ afin de remplir deux tables mysql.
Chaque ligne du txt comprend une vingtaine de données séparées par ";"
La première donnée est une sorte de préfixe :
Si c'est A, on remplit la table A.
Si c'est B, la table B
Je fais :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
$content = file($dossier.$file);
foreach($content as $line){
$part = explode(";", $line);
$prefix = $part[0];
switch($prefix){
case "A":
$id = $part[1];
$nom = $part[2];
$adresse = $part[3];
$adresse2 = $part[4];
$lieu_dit = $part[5];
$code_postal = $part[6];
$ville = $part[8];
etc...
mysql_query("INSERT INTO table A (id, nom...) VALUES (...)");
break;
case "B":
IDEM A mais avec dautres données
mysql_query("INSERT INTO table B (id, ...) VALUES (...)");
}
} |
Mais ca dépasse, sur mon serveur local (EasyPHP 5.3.8) le max_execution time pourtant réglé à 180 secondes.
Comment pourrais-je optimiser tout ça ?
Merci d'avance pour vos précieux conseils.