Fonction file_put_contents
La fonction file_put_contents écrit des données dans un fichier. Le premier paramètre est le chemin vers le fichier,
le deuxième - les données à écrire. Le troisième paramètre optionnel définit le mode d'écriture (voir le tableau ci-dessous).
Le quatrième paramètre optionnel représente une ressource de contexte de flux, créée par la fonction stream_context_create.
Permet de configurer les paramètres de travail avec un fichier ou une ressource réseau.
Syntaxe
file_put_contents(
string $filename,
mixed $data,
int $flags = 0,
?resource $context = null
): int|false
Valeurs du troisième paramètre
| Drapeau | Description |
|---|---|
FILE_USE_INCLUDE_PATH |
S'il est défini, la fonction cherchera le fichier
dans les répertoires spécifiés dans le paramètre include_path
des paramètres PHP dans le fichier php.ini.
|
FILE_APPEND |
Ajouter les données à la fin du fichier au lieu de le réécrire |
LOCK_EX |
Obtenir un verrou exclusif sur le fichier pendant la durée de l'écriture |
Exemple
Écrivons une chaîne dans un fichier :
<?php
$res = file_put_contents('data.txt', 'abcde');
echo $res;
?>
Le résultat de l'exécution du code retourne le nombre d'octets écrits :
5
Exemple
Ajoutons des données à la fin du fichier :
<?php
$res = file_put_contents('data.txt', '12345', FILE_APPEND);
echo $res;
?>
Exemple
Écrire un tableau dans un fichier :
<?php
$data = ['a', 'b', 'c'];
$res = file_put_contents('array.txt', implode(',', $data));
echo $res;
?>
Exemple
Dans le troisième paramètre, on peut spécifier plusieurs
drapeaux, en les énumérant avec le symbole |.
Par exemple, ajoutons des données avec un verrouillage du fichier :
<?php
$res = file_put_contents(
'log.txt',
"text",
FILE_APPEND | LOCK_EX
);
echo $res;
?>
Exemple
Utilisation d'un contexte :
<?php
$opts = [
'http' => [
'method' => "POST",
'header' => "Content-type: text/plain\r\n"
]
];
$context = stream_context_create($opts);
$res = file_put_contents(
'http://example.com/api',
'data=test',
false,
$context
);
?>
Voir aussi
-
la fonction
file_get_contents,
qui lit le contenu d'un fichier -
la fonction
fopen,
qui ouvre un fichier -
la fonction
fwrite,
qui écrit dans un fichier