Affecter une fonction à une variable [Résolu]

cs_lowkey 260 Messages postés jeudi 31 mai 2007Date d'inscription 5 novembre 2010 Dernière intervention - 23 nov. 2007 à 15:30 - Dernière réponse : cs_lowkey 260 Messages postés jeudi 31 mai 2007Date d'inscription 5 novembre 2010 Dernière intervention
- 26 nov. 2007 à 09:33
Salut à tous.

Un problème se pose à moi et j'aurais besoin de vous pour trouver une petite idée.

Je dois faire un calcul avec une formule qui sort d'une base de donnée. (genre : $total=row[1]; avec $row[1] qui est le résultat d'une requete(ma formule)). Jusque là, pas de problème.

Mais dans certains cas, je souhaiterais avoir des conditions dans ma formule. Et là, problème.

'$total=' est dans mon code donc impossible d'y toucher. Il faudrait donc que je puisse avoir quelque chose du genre
$total= if($a=1){ return 42;};
ou
$total= function p(){ return 42;};

Mais rien de tout ça ne marche.

Quelqu'un aurait un idée?
Jespère que j'ai été assez clair...

Merci d'avance

<hr />
lowkey
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
neigedhiver 2492 Messages postés jeudi 30 novembre 2006Date d'inscription 14 janvier 2011 Dernière intervention - 26 nov. 2007 à 01:22
3
Merci
Salut,

Dans ce cas, c'est pas une fonction que tu veux exécuter, mais du code php.
http://fr2.php.net/manual/fr/function.eval.php

:o))

Merci neigedhiver 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 102 internautes ce mois-ci

Commenter la réponse de neigedhiver
neigedhiver 2492 Messages postés jeudi 30 novembre 2006Date d'inscription 14 janvier 2011 Dernière intervention - 23 nov. 2007 à 19:11
0
Merci
Salut,

Je pense que cette fonction va te plaire ;)
http://fr2.php.net/manual/fr/function.create-function.php
Commenter la réponse de neigedhiver
cs_lowkey 260 Messages postés jeudi 31 mai 2007Date d'inscription 5 novembre 2010 Dernière intervention - 26 nov. 2007 à 00:53
0
Merci
Salut!!

En effet, cette fonction me plait, mais elle ne répond pas vraiment à mes attentes...

J'ai lu la doc et a aucun moment (j'ai pu louper le passage) je n'ai vu qu'il était possible d'avoir quelque chose du genre :
$total=create_function('', 'return 14;');

D'après ce que j'ai vu, on est obligé d'initialiser la fonction et d'y faire appel. Or comme je l'ai mis précedement, je souhaiterais quelque chose du genre :
$total= if($a=1){ return 42;};
ou
$total= function p(){ return 42;};

En simplifié, je voudrais que tout se face en une ligne de code (excepté l'affichage).

Si quelqu'un a une autre idée ou si j'ai loupé quelque chose avec cette fonction, je suis toujours preneur.

<hr />
lowkey
Commenter la réponse de cs_lowkey
cs_lowkey 260 Messages postés jeudi 31 mai 2007Date d'inscription 5 novembre 2010 Dernière intervention - 26 nov. 2007 à 09:33
0
Merci
Merci neigedhiver !!

Deuxième fois que tu m'aide grâce à cette fonction. Je vais aller lire sa doc complète.

<hr />
lowkey
Commenter la réponse de cs_lowkey

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.