Bonjour,
je rencontre un problème avec le paramètre "enclosure" de fputcsv.
Si je mets rien ou ceci """, j'ai un guillemet en début en fin de ligne, si je mets ceci " " j'ai un espace en début et fin de ligne et à l'intérieur de la ligne les espaces sont doublés.
j'ai surement loupé quelques chose. https://www.php.net/manual/en/function.fputcsv.php
exemple d'une ligne: "SUISSE|10BR15560R150T-5050|3286341380019|43|74,77|BRIDGESTONE|155/60R 15 74T TL T-005|non|été|155|60|15|74|T|TURANZA T005||C|A|070B|5,7|6263.jpg"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 <?php /* Fichier à supprimer */ $fichier = "termine.csv"; if( file_exists ($fichier)) unlink( $fichier ) ; $filename = "all.csv"; $fileRead = fopen($filename, 'r'); $fileWrite = fopen("termine.csv", "w"); $sep = "|"; if (!$fileRead || !$fileWrite) { echo "Erreur d'ouverture du fichier de lecture et/ou d'écriture avec $filename."; } fputs($fileWrite, $data= chr(0xEF) . chr(0xBB) . chr(0xBF)); while (($data = fgetcsv($fileRead, 0, "|")) !== FALSE) { // le commencement des colonne est 0]); fputcsv($fileWrite, array(. $data[54]. $sep. $data[57]. $sep . $data[28] . ".jpg" ) ,"|", "\"", "\\", "\n"); } fclose($fileWrite); fclose($fileRead); echo "copie terminée merci"; ?>
j'ai aussi essayé cela comme paramètre enclosure "\t" et là j'ai un escape.
merci d'avance pour votre aide.
Partager