2017-09-18 2 views
0

Je souhaite qu'un utilisateur saisisse une chaîne dans un formulaire (ou utilise une interface js pour créer la chaîne correspondante) qui peut ensuite être évaluée de manière logique côté serveur.évaluation de l'expression logique php à partir de la chaîne

Par exemple: L'événement admin dans une zone écrit de texte "((36 & & 37) || (37 & & 38)) & & ~ 42" qui va dans une table de fee_option. Un inscrit a choisi les options 37 et 38. L'inscrit doit alors facturer une certaine redevance parce que l'expression est vraie. Je peux voir une option de base de remplacer chaque nombre par le résultat de in_array ($ one_number, $ options_selected_by_user) et puis en exécutant cela à travers une sorte de sécurité regex et puis coller cela dans un eval ($ str), mais c'est vraiment juste un exemple stupide.

Mes questions sont alors:

  1. Y at-il une syntaxe classique pour l'écriture des expressions à évaluer en dehors de l'écriture de code à coller dans une déclaration eval?
  2. Existe-t-il une bibliothèque PHP, un script ou même un article de blog qui vous aide à écrire une telle chose? Autrement dit, est-ce que tout le monde écrit des instructions conditionnelles entrées par l'utilisateur pour les constructeurs de formulaires et à partir de zéro à chaque fois?
  3. Existe-t-il une bibliothèque javascript spécialement conçue pour générer des instructions logiques via une interface utilisateur, c.-à-d. grouper ors, ands et nots, avec un peu de maths trop probablement.

Répondre