Fonction PHP introuvable (pour moi) dans la doc... [Résolu]

Signaler
Messages postés
18
Date d'inscription
samedi 5 octobre 2002
Statut
Membre
Dernière intervention
1 mars 2009
-
Messages postés
18
Date d'inscription
samedi 5 octobre 2002
Statut
Membre
Dernière intervention
1 mars 2009
-
Bonjour,
Je cherche à traiter les opérations suivantes:
$a = 125;
$b = 150;
$c = 70;
$formule1 = '$a * $b/$c';
$resultat1 = fonctioninconnue($a, $b, $c, $formule1)
$formule2 = '$a / $b * $c';
$resultat2 = fonctioninconnue($a, $b, $c, $formule2)

$a, $b, $c et $formule 1&2 étant bien entendu variables, et issus par exemple d'une table MySql.

Merci de vos réponses...

7 réponses

Messages postés
18
Date d'inscription
samedi 5 octobre 2002
Statut
Membre
Dernière intervention
1 mars 2009

Merci pour tout.....
Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
8
Oui...



Donc là c'est au tour des "variables-fonctions" de ce manifester... Adiées par la fonction "eval()"



C'es pareil qu'en JavaScript :

dans ta base de données, tu as un champs texte qui te revois ce genre de chose

$stringFonction = 'pouet1($a,$b,$c) { return($a*$b/$c);}';



puis tu defini une variable $variableFonction par l'intermédiaire d'eval

eval('$variableFonction = '.$stringFonction);



Et tu obtiens la dite "variable-fonction :



echo $$variableFonction(3,2,1); // => "6" :-)



Voili, bonne nuit
Messages postés
18
Date d'inscription
samedi 5 octobre 2002
Statut
Membre
Dernière intervention
1 mars 2009

OK Merci, c est exactement ce que je cherchais. Pas pensé à regarder dans les fonctions diverses.

Question subsidiaire: y a t il un moyen naturel pour s'assurer que toutes les variables contenues dans la string passée à EVAL existent ? ou dois je le faire à la mimine ?
Messages postés
18
Date d'inscription
samedi 5 octobre 2002
Statut
Membre
Dernière intervention
1 mars 2009

Autre question qui me vient à l'esprit: y a t il un moyen de s'assurer que la syntaxe de la string passée à EVAL est correcte ?

Et encore Merci.


PS. Chez moi (St Denis - Réunion ) c'est quasiment l'heure de l'apéro...
Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
8
Question subsidiaire: y a t il un moyen naturel pour s'assurer que
toutes les variables contenues dans la string passée à EVAL existent ?
ou dois je le faire à la mimine ?

Eval n'est pas plus magique que ça... evaluer une chaine reviend exactement à la taper directos dans le script !

Y a t-il un moyen naturel pour s'assurer que toutes les variables contenues dans mon script existent ?

=> Ne pas se mélanger les doigts sur le clavier et/ou abuser des isset()...





Autre question qui me vient à l'esprit: y a t il un moyen de s'assurer
que la syntaxe de la string passée à EVAL est correcte ?

Oui => http://fr.php.net/manual/fr/function.eval.php

Même aujourd'hui avec mon expérience en PHP, je continu à aller
regarder la doc pour la moindre fonction (substr, echo !!!). Car en PHP
il y'a toujours une utilisation "détournée" des fonctions quand on joue
à les faire bugger! Et puis y'a les petits lien en bas de page qui te
renverront vers l'idée que tu n'as pas eut.



A+
Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
8
Tiens ! Par exemple au pied de Eval(), on te renvoi vers cette fonction :

[http://fr.php.net/manual/fr/function.call-user-func.php mixed call_user_func ( callback function [, mixed parameter [, mixed ...]]]



Ca pourrait le faire aussi !?! Non ?
Messages postés
18
Date d'inscription
samedi 5 octobre 2002
Statut
Membre
Dernière intervention
1 mars 2009

Merci pour tout.....