Bonjour,
Je reviens vers vous aujourd'hui pour un souci sur la fonction fgetcsv.
Je vous explique en détail :
1) J'ai un dossier .zip dans lequel j'ai un fichier .csv ainsi que des photos.
Mon fichier csv à cette forme :
"ref_cli"!#"ref_prod"!#"type"!#"nom"!#"prix"!#"quantité"!#"description"!#""!#
Il contient plusieurs ligne.
Pas agréable à regarder je vous confirme, mais obligé de m'en servir sans le modifier.
Je fait le traitement de mon fichier csv de cette manière :
1 2 3 4 5 6 7 8 9 10
| if (file_exists('/home/monsite/www/mondossier/monsousdossier/monclient/produit.csv')) {
$fields = array('ref_cli', 'ref_prod', 'type', 'nom', 'quantite',
'description') ;
$data = array( ) ; // Résultat
$fp = fopen('/home/monsite/www/mondossier/monsousdossier/monclient/produit.csv', 'r') ;
while ( ($line = fgetcsv($fp, 1000, '!#')) !== FALSE ) {
$data[ ] = array_combine($fields, $line) ;
}
fclose($fp) ;
print_r($data) ; |
De là j'ai aucun traitement qui s’effectue, et quelques message (NOTICE et WARNING) :
PHP Notice: fgetcsv(): delimiter must be a single character
PHP Warning: array_combine(): Both parameters should have an equal number of elements
J'aimerais savoir si quelqu'un a déjà eu à faire du parsage de fichier csv.
Partager