Lafafm
@Lafafm
Development lead, Full stack generalist

Динамическое создание / удаление правил для PHP демона

Здравствуйте. Проблема заключаеться в том, что нужно с помощью графического интерфейса задавать PHP демону новые правила. Допустим есть такие правила:
Если id == 1 -> Отправить e-mail c содержимым ($mail);
Если id == 2 -> Удалить пользователя;
И т.д.

И допустим нужно через интерфейс добавить 3-е правило, что бы оно тоже выполнялось уже при каждом запуске демона:
Если id == 5 -> Удалить пользователя;

Меня интересует не сама реализация, а то как наиболее правильно это реализовать. Заранее спасибо.
  • Вопрос задан
  • 2488 просмотров
Решения вопроса 1
@CentOS
PHP-разработчик
1) Допустим есть массив $rules - значениями которых будут анонимные функции, куда например будет передаваться id либо другие параметры.
2) В графическом редакторе создаются правила и сохраняются в виде файлов, что-то вроде
<?php
$rules[]= function(..) {..}
3) Файлы инклудятся в нужном месте кода и массив $rules собирается в массив правил
4) Далее перебираем массив и выполняем функции
$array = array(
    1 => function() { echo 'test 1'; },
    2 => function() { echo 'test 2'; }
);

foreach ($array as $key => $fun)
    $fun();


Другое дело, конечно, подход не совсем безопасен.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
akubintsev
@akubintsev
Опытный backend разработчик
Для меня наиболее правильным решением видится создание своего интерпретатора условного языка, которым можно описывать правила. Тогда проблем с безопасностью не должно возникнуть.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы