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

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"; 
  ?>
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"

j'ai aussi essayé cela comme paramètre enclosure "\t" et là j'ai un escape.

merci d'avance pour votre aide.