$variable contenant une opération

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : $variable contenant une opération

Re: $variable contenant une opération

par xTG » 24 juin 2014, 20:14

Dans mon exemple je me demande s'il ne manquerait pas un point virgule dans la formule d'eval. ;)

Re: $variable contenant une opération

par Elie » 24 juin 2014, 18:07

J'ai réfléchi et simplifié ...
function calcul($operation) {
	return 4+$operation;
}

echo calcul(2); // 6
echo calcul(-1); // 3

Re: $variable contenant une opération

par Elie » 24 juin 2014, 16:15

J'ai juste copié le code de xTG

Re: $variable contenant une opération

par moogli » 24 juin 2014, 16:06

ben y a une erreur de syntaxe, c'est quoi ce que tu test exactement ?
manquerais pas une ' des fois ?

sinon le parse avec explode c'est réalisable.

le plus simple étant 3 paramètres, deux pour les opérandes et un pour l'opérateur ;)

@+

Re: $variable contenant une opération

par Elie » 24 juin 2014, 15:55

J'avais vu un truc similaire dans les exemples de php.net mais en local ca marche pas ...

Code : Tout sélectionner

Parse error: syntax error, unexpected end of file in C:\wamp\www\test.php(5) : eval()'d code on line 1

Re: $variable contenant une opération

par Elie » 24 juin 2014, 11:34

Euh genre avec un str_split ?
Si on peut se passer de ereg, je prend !

Re: $variable contenant une opération

par xTG » 24 juin 2014, 08:14

Pas fan des eval car c'est souvent pour faire de belles brèches mais ce serait plutôt ainsi :
function calcul($operation) {
 $retour = 0;
 eval('$retour = 4'.$operation);
 return $retour;
}

echo calcul('+2'); // 6
Sinon pour faire mieux il faut décomposer une chaîne de caractères qui contient ton opération et appliquer chaque opérateur unitairement.

$variable contenant une opération

par Elie » 24 juin 2014, 02:37

Hello,

J'aimerai faire marcher ca :
function calcul($operation) {

 return eval('4'.$operation);

}

echo calcul('+2'); // 6
Une idée ?