Re,
Bonjour et merci.
Cependant, je ne pense pas avoir ma réponse.
class auth{
private $pseudo;
}
$visiteur = new auth();
$visiteur->pseudo = "jeremieca";
class voiture{
function avance(){
echo $visiteur->pseudo.' avance dans la voiture';
}
}
Mais là, il ne connait pas $visiteur pseudo !!
Si, tu as eu la réponse et celle-ci correspond tout à fait à ton désir.... 3ieme exemple: By function
Ta variable est privée il te faut, donc, une méthode de lecture (indiquée dans l'exemple) et une
méthode d'assignation.
'tit exemple ?...
final class TaClass
{
/**
* Seule et unique variable de class
*
* @var private string
*/
private $_pseudo = NULL;
/**
* Récupération d'une variable par son nom
*
* @value string
* @return string ou false si échec
*/
public getValue($keyName)
{
/**
* Variable temporaire contenant variable à retourner si celle-ci est présente
*
* @var mixed
*/
$var = "";
/**
* Si la variable n'est pas présente alors on renvoie faux
*/
switch($keyName)
{
case "pseudo":
{
/**
* Variable recherchée... N'est pas traité le cas ou la variable serait nulle
* ...mais la n'est pas l'objet de ta demande
*/
$var = $this -> _pseudo;
}
break;
// ...
/**
* Variable introuvable, on sort en renvoyant faux
*/
default: return false;
}
/**
* Retourne la valeur
*/
return $var;
}
/**
* Assignation d'une valeur, même technique
*
* @value string la clef à recherche
* @value string la valeur à enregistrer
*
* @return bool suivant réussite ou échec de la fonction
*/
public setValue($keyName, $value)
{
switch($keyName)
{
case "pseudo":
{
/**
* Variable recherchée...
*/
$this -> _pseudo = $value;
}
break;
// ...
/**
* Retourne la valeur
*/
default: return false;
}
return true;
}
}
Usage:
$class = new TaClass()
if (!$class -> setValue("pseudo", "toto")) die("Echec !!!");
else echo "La variable pseudo vaut : ".$class -> getValue("pseudo");
Comme tu le vois: Exemple trois donné en post 2.
J'ai mis la class final du fait que ta variable est private, l'intérêt de faire hériter
cette class serait pour le moins inutile. (A part pour les fonctions)
J'ai collé un underscore à ta variable (+ ou - une question de norme) mais le choix
ne le prend pas en compte, attention.
Perso (pour mes scripts) je renvoie la référence et non la valeur voulue mais c'est
un choix perso, à toi de voir.
Voili, voilou... @+ bon code
EDIT: Méchant AB, tu m'as grillé ;( (joke)