Bonsoir,
j'inserre avec LOAD DATA INFILE un fichier csv dans ma base, sauf que je dois reformater dans le tableur mes valeurs avant introduction : ni virgules, ni espaces ce qui m'amène à perdre en exactitude.
Je cherche depuis longtemps à utiliser str_replace, et si j'y arrive sur une chaine de carractères, je n'y arrive pas sur un fichier de type csv, à moins d'utiliser une fonction BASH ce qui me semble lourd.
Si quelqu'un peut m'orienter :
Je dois d'abord remplacer les '.' par 'rien' les 'espaces' par 'rien' , enfin les ',' par des 'points' .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 $filename = array("../../../fichier/efs.csv"); $efs_c = str_replace($filename, ".",""); $efs_cs = str_replace($filename, " ", ""); $efs_csv = str_replace($filename, ",", "."); // NE SERT PAS DEPUIS MON MSI (utile depuis les excels du TAF)--->> LINES TERMINATED BY '\r\n' /* insertion */ $requete1 = "LOAD DATA LOCAL INFILE '../../../fichier/efs.csv' .....................
Quelque chose m'échape ...
Merci de vos avis
nimbus
Partager