intervertir la valeur de deux variables

Mammouth du PHP | 1966 Messages

22 nov. 2006, 19:41

Bonjour

mon problème n'en est pas vraiment un, j'ai un script qui fonctionne mais par souci d'élégance et d'apprentissage je vous pose la question

Est-il possible d'intervertir la valeur entre 2 variables sans passer par une variable temporaire??

J'utilise pour le moment
$temp = $this->couleur_x;
$this->couleur_x = $this->couleur_y;
$this->couleur_y = $temp;
Est-il possible de le faire en une ligne ??
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone du rubik's cube

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

22 nov. 2006, 22:03

Non pas possible et puis c'est bien plus élégant comme ça.

Tu peux en faire une fonction :-k

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Mammouth du PHP | 1966 Messages

26 nov. 2006, 01:39

j'ai trouvé plus simple que la fonction
list($this->couleur_x,$this->couleur_z) = array($this->couleur_z,$this->couleur_x);
la fonction demandait de toute façon un retour qui devait se faire avec list() donc autant ne pas passer par une fonction inutile

merci quand même et si les devellopeur de php passe par içi, pensez à une fonction integrer de ce type pour la suite :wink:
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone du rubik's cube

Eléphant du PHP | 78 Messages

26 nov. 2006, 01:41

j'ai trouvé plus simple que la fonction
list($this->couleur_x,$this->couleur_z) = array($this->couleur_z,$this->couleur_x);
la fonction demandait de toute façon un retour qui devait se faire avec list() donc autant ne pas passer par une fonction inutile

merci quand même et si les devellopeur de php passe par içi, pensez à une fonction integrer de ce type pour la suite :wink:
Pour la méthode d'une variable dites (frigo) est la méthode utilisée pour tout les languages, et d'ailleurs dans l'algorithme en lui même.

Mammouth du PHP | 1966 Messages

26 nov. 2006, 01:48

le fait de ne pas créer cette variable "frigo" moi-même me permet d'être sur quelle ne pourrait pas interferer ailleur et la supprimer à chaque fois est une ligne de plus de perdue
Spols
pour les fan de rubik's cube ou pour les curieux ==> le portail francophone du rubik's cube

Cyril.
Invité n'ayant pas de compte PHPfrance

11 déc. 2013, 10:39

L'avantage de la méthode utilisant list et array c'est que l'on peut permuter n variables sans passer par n variables temporaires.
list($var1, $var2, $var3) = array ($var3, $var1, $var2);