Bonjour, j'aurais voulu savoir s'il y a moyen de stocker un objet dans un fichier ou non.
Version imprimable
Bonjour, j'aurais voulu savoir s'il y a moyen de stocker un objet dans un fichier ou non.
Avec serialize, non ? Pour le récupérer, il suffit que sa classe (et dépendances) soit déclarée avant l'appel à unserialize.
Merci pour ta réponse mais je n'ai pas bien compris. Imaginons que j'ai un objet test :A partir de là quel est la procédure pour le stocker dans un fichier et puis pour le récupérer ?Code:
1
2
3
4
5
6
7
8 <?php $test = new oTest(); $test->name = 'unTest'; $test->couleur = 'mauve'; ?>
Merci
En admettant que la déclaration de la classe soit placée dans le fichier test.php et que votre serveur web dispose des droits d'écriture :
- Sérialisation :
Code:
1
2
3
4
5
6
7
8
9 <?php define('FICHIER_CACHE', 'test_obj.cache'); require_once('test.php'); $test = new oTest(); $test->name = 'unTest'; $test->couleur = 'mauve'; file_put_contents(FICHIER_CACHE, serialize($test));
- Désérialisation :
Code:
1
2
3
4
5
6
7
8
9
10
11 <?php define('FICHIER_CACHE', 'test_obj.cache'); require_once('test.php'); // Important : à faire avant unserialize ! if (is_file(FICHIER_CACHE)) { $test = unserialize(file_get_contents(FICHIER_CACHE)); } else { // ... } echo $test->name; // pour vérifier
(non testé)
Merci, ça marche très bien !