Une fonction PHP qui calcule ?

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 : Une fonction PHP qui calcule ?

Re: [RESOLU] Une fonction PHP qui calcule ?

par @rthur » 30 juil. 2020, 13:45

Effectivement eval() ne doit quasiment jamais être utilisé.
Du coup je préconise cette librairie qui fait ce qu'il te faut (et même si tu as déjà fait ton choix, je mets le lien si un futur internaute cherche une solution) :
https://github.com/madorin/matex

Re: Une fonction PHP qui calcule ?

par ecumastor » 28 juil. 2020, 17:08

Merci Saian.

Le lien que tu m'as donné semble fort sympathique, mais je ne sais pas du tout comment utiliser tout ça. Cela dit, en lisant, j'ai vu une fonction php, bien dangereuse, nommée "eval".
Donc, comme je travaille sur un projet de gestion de stock, et comme les accès sont protégés, je me suis penché sur cette fonction, d'où finalement une fonction tout simple qui résoud mon problème :
<?php
function calculer($chaine){
	//echo"VERIF chaine : $chaine<br>";
	$calcul = eval('return '.$chaine.';');
	return $calcul;
}
?>

Et ca fonctionne.

Merci donc d'avoir pris le temps de me répondre.

David.

Re: Une fonction PHP qui calcule ?

par Saian » 28 juil. 2020, 16:38

Salut, je suis tombé sur ça avec une petite recherche google : https://github.com/chriskonnertz/string-calc

Une fonction PHP qui calcule ?

par ecumastor » 28 juil. 2020, 16:18

Bonjour,

Je suis à la recherche, vaine jusqu'ici, d'une fonction PHP qui permette de calculer le résultat d'une chaine.

Par exemple :
$chaine="1+2+3" -> La fonction retourne 6
$chaine="1+2*3" -> La fonction retourne 7
... etc ...

Cause : je construis une calculette qui, jusqu'ici m'affiche une suite de caractères en fonction des touches (1-9, 0, +, -, *, /, =), et qui construit la chaîne au kilomètre. Il faut maintenant qu'à l'appui sur "=", ma calculette me retourne le résultat.

Donc s'il existait en PHP la fonction calculer_la_chaine($chaine), ça serait bien :)

Quelqu'un connaît-il une telle fonction ?

Merci.

David.