Constructores y destructores
Cuando una clase se crea o se destruye, se llama a unos métodos mágicos como ya hemos adelantado. Si queremos realizar alguna acción en cualquiera de los dos eventos, tendremos que definir esos métodos e implementar su funcionalidad.El método
__construct()
se llama cuando creamos una
clase y suele ser un buen punto para rellenar información por defecto, o
formar un objeto con algo que venga de la base de datos, etc.
1
2
3
4
5
6
7
8
9
10
11
| class Usuario { public $usuario ; public $password ; public function __construct() { $this ->password = '1234' ; //Seguridad al poder! } } $usuario = new Usuario; echo $usuario ->password; // 1234 |
1
2
3
4
5
6
7
8
9
10
11
12
| class Usuario { public $usuario ; public $password ; public function __construct( $usuario ) { $this ->password = '1234' ; $this ->usuario = $usuario ; } } $usuario = new Usuario( 'juan' ); echo $usuario ->usuario; // juan |
__destruct()
de todas las clases en caso de que lo tengan. También podemos forzarlo usando la función unset
sobre el objeto. En el destructor se suelen implementar cierres de conexiones a bases de datos, liberación de memoria, etc.Veámoslo en un breve ejemplo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| class Usuario { public $usuario ; public $password ; public function __construct( $usuario ) { $this ->password = '1234' ; $this ->usuario = $usuario ; } public function __destruct() { echo 'Muero...' ; } } $usuario = new Usuario( 'juan' ); unset( $usuario ); // 'Muero...'; |
No hay comentarios:
Publicar un comentario