Bonjour, j'ai un problème avec la méthode __destruct.

Je me demandais pourquoi elle était appelée juste après la construction de l'objet dans une "grosse classe" mais en testant ce bête code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
<?php
 
class test {
	function __construct() {
		echo '__construct';
	}
 
	function __destruct() {
		echo '__destruct';
	}
 
	function abc() {
		echo 'abc';
	}
}
 
$t = new test();
 
$t->abc();
 
 
?>
J'obtiens :

__construct__destructabc__destruct

Où est le problème ? je précise que dans la classe dans laquelle je travaillais quand j'ai remarqué ce genre de problème de nombreux appels à __destruct se produisaient avant la fin du script, ce qui faisait planter l'objet (fermeture de fichier..) et le serveur apache (comme si il y ait une boucle infinie sur la méthode destruct).

PS : Je suis sous wamp avec php 5.2.8