downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

SplFileObject::fgets> <SplFileObject::fgetc
[edit] Last updated: Fri, 25 May 2012

view this page in

SplFileObject::fgetcsv

(PHP 5 >= 5.1.0)

SplFileObject::fgetcsvRécupère une ligne depuis le fichier et l'analyse comme étant des données CSV

Description

public array SplFileObject::fgetcsv ([ string $delimiter = "," [, string $enclosure = "\"" [, string $escape = "\\" ]]] )

Récupère une ligne depuis le fichier et l'analyse comme étant des données CSV et retourne un tableau contenant tous les champs lus.

Liste de paramètres

delimiter

Le délimiteur de champs (un seul caractère). Par défaut, ce sera une virgule ou la valeur définie en utilisant la méthode SplFileObject::setCsvControl().

enclosure

Le caractère utilisé pour entourer la valeur d'un champ (un seul caractère). Par défait, ce sera un guillemet double ou bien la valeur définie en utilisant la méthode SplFileObject::setCsvControl().

escape

Le caractère d'échappement (un seul caractère). Par défaut, ce sera un anti-slash (\) ou bien la valeur définie en utilisant la méthode SplFileObject::setCsvControl().

Valeurs de retour

Retourne un tableau indexé contenant tous les champs lus, ou FALSE si une erreur survient.

Note:

Une ligne vide d'un fichier CSV sera retourné sous la forme d'un tableau contenu un seul champ NULL sauf si vous utilisez SplFileObject::SKIP_EMPTY | SplFileObject::DROP_NEW_LINE, auquel cas, les lignes vides seront ignorées.

Exemples

Exemple #1 Exemple avec SplFileObject::fgetcsv()

<?php
$file 
= new SplFileObject("data.csv");
while (!
$file->eof()) {
    
var_dump($file->fgetcsv());
}
?>

Exemple #2 Exemple avec SplFileObject::READ_CSV

<?php
$file 
= new SplFileObject("animals.csv");
$file->setFlags(SplFileObject::READ_CSV);
foreach (
$file as $row) {
    list(
$animal$class$legs) = $row;
    
printf("Un %s est un %s avec %d jambes\n"$animal$class$legs);
}
?>

Contenu de animals.csv

crocodile,reptile,4
dauphin,mammifère,0
canard,oiseau,2
koala,mammifère,4
saumon,poisson,0

L'exemple ci-dessus va afficher quelque chose de similaire à :

Un crocodile est un reptile avec 4 jambes
Un dauphin est un mammifère avec 0 jambes
Un canard est un oiseau avec 2 jambes
Un koala est un mammifère avec 4 jambes
Un saumon est un poisson avec 0 jambes

Voir aussi



add a note add a note User Contributed Notes SplFileObject::fgetcsv
v-fpiris at teknober dot com 21-May-2011 09:56
after setting the delimiter '\t' fgetcsv() truncates the value when it is empty string

workaround:

<?php
$file
= new SplFileObject($path);
$file->setFlags(SplFileObject::DROP_NEW_LINE);
while (
$file->valid()) {
   
$line = $file->fgets();
   
$line = explode("\t", $line);

   
print_r($line);
}
?>

 
show source | credits | sitemap | contact | advertising | mirror sites