|
|
PRATIQUE PHP |
|
|
|
Utiliser file_put_contents() dans un script PHP4 |
|
"Quel est l'équivalent PHP4 de la fonction PHP5 file_put_contents() ?"
(15/03/2005) |
|
La
fonction file_put_contents()
est une nouveauté de PHP5 (sa soeur file_get_contents()
existe elle depuis PHP 4.3.0). Respectivement, ces deux fonctions
servent à écrire une chaîne dans un fichier, et à placer le contenu
d'un fichier dans une chaîne. Néanmoins, PHP4 reste la version du
langage la plus utilisée, et il est parfois nécessaire de redéfinir
file_put_contents() pour pouvoir
tirer parti des scripts écrits pour PHP5.
|
Forum |
|
Réagissez
dans les forums
de JDN Développeurs
|
file_put_contents() combine
en une seule fonction les actions des fonctions fopen(),
fwrite() et fclose().
Pour qu'un script PHP4 qui l'utilise fonctionne, il faudra
ajouter un test (pour s'assurer que PHP ne reconnaît pas cette
fonction), et une fonction de remplacement. Voici le code généralement
utilisé dans ce cas :
if(!function_exists('file_put_contents'))
{
function file_put_contents($filename, $data, $file_append
= false) {
$fp = fopen($filename, (!$file_append ? 'w+' : 'a+'));
if(!$fp) {
trigger_error('file_put_contents ne peut pas écrire
dans le fichier.', E_USER_ERROR);
return;
}
fputs($fp, $data);
fclose($fp);
}
}
Autre solution : utiliser le paquetage PEAR PHP_Compat,
qui permet d'utiliser des fonctions indisponibles dans certaines
versions de PHP, dont file_put_contents(). |
|
|