8.38 Système de fichiers
8 Référence des fonctions
Manuel PHP
. Introduction . Pré-requis . Installation . Configuration à l'exécution . Types de ressources . Constantes pré-définies . Voir aussi . basename . chgrp . chmod . chown . clearstatcache . copy . delete . dirname . disk_free_space . disk_total_space . diskfreespace . fclose . feof . fflush . fgetc ->fgetcsv . fgets . fgetss . file_exists . file_get_contents . file_put_contents . file . fileatime . filectime . filegroup . fileinode . filemtime . fileowner . fileperms . filesize . filetype . flock . fnmatch . fopen . fpassthru . fputcsv . fputs . fread . fscanf . fseek . fstat . ftell . ftruncate . fwrite . glob . is_dir . is_executable . is_file . is_link . is_readable . is_uploaded_file . is_writable . is_writeable . link . linkinfo . lstat . mkdir . move_uploaded_file . parse_ini_file . pathinfo . pclose . popen . readfile . readlink . realpath . rename . rewind . rmdir . set_file_buffer . stat . symlink . tempnam . tmpfile . touch . umask . unlink
|
8.38.23 fgetcsv()Renvoie la ligne courante et cherche les champs CSV[ Exemples avec fgetcsv ] PHP 3 >= 3.0.8, PHP 4, PHP 5
array
fgetcsv (
resource
handle
,
int
length
,
string
delimiter
,
string
enclosure
)
-
handle
-
Un pointeur valide sur un fichier ouvert avec
fopen
,
popen
ou
fsockopen
.
-
length
(Optionnel)
-
Doit être plus grand que la plus grande ligne (en terme de caractères)
à lire dans le fichier (y compris le caractère de fin de ligne). Ce
paramètre est optionnel depuis PHP 5. Omettre ce paramètre
(ou le définir à 0 en PHP 5.0.4 et suivant) fait que la longueur maximale
de la ligne n'est pas limitée, ce qui est légèrement plus lent.
-
delimiter
(Optionnel)
-
Spécifie le séparateur (un seul caractère). Par défaut, c'est
la virgule.
-
enclosure
(Optionnel)
-
Spécifie le caractère de délimitation (un seul caractère).
Par défaut, c'est les guillemets doubles. Ce paramètre a été
ajouté en PHP 4.3.0.
fgetcsv
est identique à
fgets
mais
fgetcsv
analyse la ligne qu'il lit et recherche les champs
CSV
, qu'il
va retourner dans un tableau les contenant. Le délimiteur de champs
delimiter
est la virgule, à moins que vous ne
fournissiez un troisième argument.
| Note | |
Le paramètre
enclosure
a été
ajouté en PHP 4.3.0.
|
handle
doit être un pointeur valide, et avoir
été correctement ouvert par
fopen
,
popen
, ou
fsockopen
.
length
doit être plus grand que la plus
grande ligne trouvée dans un fichier CSV (en comptant les
caractères de fin de ligne).
Il est devenu optionnl en PHP 5.
fgetcsv
retourne
FALSE
en cas
d'erreur, ou en cas de fin du fichier.
| Note | |
Une ligne vide dans un fichier CSV sera retournée sous la
forme d'un tableau contenant la valeur
NULL
et ne sera pas traitée
comme une erreur.
|
| Lit et affiche le contenu d'un fichier CSV avec fgetcsv |
<?php $row = 1; $handle = fopen("test.csv", "r"); while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { $num = count($data); echo "<p> $num fields in line $row: <br /></p>\n"; $row++; for ($c=0; $c < $num; $c++) { echo $data[$c] . "<br />\n"; } } fclose($handle); ?>
|
fgetcsv
a été protégé des données binaires depuis PHP 4.3.5.
| Note | |
La définition des locales entre en jeux avec cette fonction.
Si
LANG
vaut, e.g.
en_US.UTF-8
,
les fichiers encodés sur un octet sont mal lus par cette fonction.
|
Voir aussi
explode
,
file
,
pack
et
fputcsv
.
|