[POO] Passer une valeur de variable en variable
Bonjour,
je tente difficilement de comprendre les rouages de POO.
J'ai un système de gestion par session de la langue de mon site (stockée dans une variable $nav et un systeme de gestion de la taille de police stockée dans ma variable $lang
Ces deux variables sont utilisée un peu partout sur mon site.
Mon code pour gérer tout ca est ci dessous. C'est le code original
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| //Si Pas de session on attribue la taille "12"
if(!isset($_SESSION['size'])){
$size = "12";
}else{ //Sinon on reste sur la valeur enregistrée dans la session
$size = $_SESSION['size'];
}
//Si on choisie une nouvelle taille, on enregistre la nouvelle valeur
if(isset($_GET['size'])){
$size = $_GET['size'];
session_register("size");
}
//Si Pas de session on attribue la valeur "Accueil"
if(!isset($_SESSION['nav'])){
$nav = "1";
}else{ //Sinon on reste sur la valeur enregistrée dans la session
$nav = $_SESSION['nav'];
}
//Si on choisie une nouvelle section, on enregistre la nouvelle valeur
if(isset($_GET['nav'])){
$nav = $_GET['nav'];
session_register('nav');
} |
Je me suis dit que je répétais à chaque fois le meme code, les seules choses qui changent sont le nom de la variable finale et sa valeur par défaut.
J'essai ainsi de crée dynamiquement le nom de la variable, mais je ne sais pas comment faire.
Comme ca, chaque fois que je voudrais utiliser une nouvelle variable à stocker en session, je n'aurai juste à rajouter un objet.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| class parametre {
var $mon_parametre ;
var $valeur_parametre ;
function parametre($mon_parametre, $valeur_parametre) {
$this->mon_parametre = $mon_parametre;
$this->valeur_parametre = $valeur_parametre;
}
function enregistre() {//Affiche les valeurs de mes parametres pour les vérifier
echo $this->mon_parametre;
echo $this->valeur_parametre;
}
}
$size = new parametre("size",12);
$size->enregistre();
echo'<BR>';
$nav = new parametre("nav",1);
$nav->enregistre(); |
merci
ici on a pas le systeme de logique, mais j'aimerais deja pouvoir tester ma premiere classe et mon premier objet (c'est ma premiere initiative) avec une valeur definie, meme si pour linstant on peux pas agir dessus