par
Ryle » 09 juin 2008, 21:03
A l'intérieur d'une classe, tu ne dois avoir que des attributs et/ou des méthodes et rien d'autre, donc pas de $this->machin = $truc. En revanche tu peux faire cela à l'intérieur d'une méthode, ou éventuellement initialiser tes variables avec une constante lors de leur déclaration (mais c'est pas recommandé).
En général on utilise pour cela un Constructeur. Le constructeur est une méthode qui est appellée à chaque fois que tu créer une nouvelle instance de ta classe (avec "new"). L'idée est donc d'en profiter pour initialiser les variables de cette instance en les passant soit en paramètre où en les récupérant depuis les variables super-globales
class Galerie {
var $prenom_f;
var $prenom_h;
var $year;
var $date_propre;
var $date_brute;
/* en php4, le constructeur à le même nom que la classe
en php5 on peut utiliser __contruct(), qui permet de surcharger le constructeur parent en cas d'héritage */
function Galerie($prenom_f_mysql, $prenom_h_mysql, $date_propre_mysql) {
$this->prenom_f = $prenom_f_mysql;
$this->prenom_h = $prenom_h_mysql;
$this->year = $_SESSION['year'];
$this->date_propre = $date_propre_mysql;
$this->date_brute = $_SESSION['date'];
}
}
$objGalerie = new Galerie($prenom_f_mysql, $prenom_h_mysql, $date_propre_mysql);
A l'intérieur d'une classe, tu ne dois avoir que des attributs et/ou des méthodes et rien d'autre, donc pas de $this->machin = $truc. En revanche tu peux faire cela à l'intérieur d'une méthode, ou éventuellement initialiser tes variables avec une constante lors de leur déclaration (mais c'est pas recommandé).
En général on utilise pour cela un Constructeur. Le constructeur est une méthode qui est appellée à chaque fois que tu créer une nouvelle instance de ta classe (avec "new"). L'idée est donc d'en profiter pour initialiser les variables de cette instance en les passant soit en paramètre où en les récupérant depuis les variables super-globales
[php]class Galerie {
var $prenom_f;
var $prenom_h;
var $year;
var $date_propre;
var $date_brute;
/* en php4, le constructeur à le même nom que la classe
en php5 on peut utiliser __contruct(), qui permet de surcharger le constructeur parent en cas d'héritage */
function Galerie($prenom_f_mysql, $prenom_h_mysql, $date_propre_mysql) {
$this->prenom_f = $prenom_f_mysql;
$this->prenom_h = $prenom_h_mysql;
$this->year = $_SESSION['year'];
$this->date_propre = $date_propre_mysql;
$this->date_brute = $_SESSION['date'];
}
}
$objGalerie = new Galerie($prenom_f_mysql, $prenom_h_mysql, $date_propre_mysql);[/php]