Вот что я пробовал:
Код: Выделить всё
function store_callable(string $func)
{
writefile($func);
}
eval(readfile());
Во-вторых, хотя eval() используется здесь для запуска сохраненной функции, я подумал, есть ли лучший способ сделать это, хотя, похоже, нет.
Я не думаю, что это своего рода сериализация, но кажется, что они имеют сходство, поэтому я добавил тег все еще.
РЕДАКТИРОВАТЬ:
Моя первоначальная идея заключалась в том, чтобы создать систему уведомлений, которая отправляет сообщения в конкретную учетную запись пользователя. Однако некоторые уведомления специально отправляются только на одно устройство или IP-адрес. Это означает, что для этого мне нужна функция фильтра. На самом деле я могу выполнить это, используя новое свойство, например, ограниченное, но я хотел сделать более общую функцию-фильтр поля в объекте уведомления, которая возвращает логическое значение и позволяет системе решать, отправлять ли уведомление при этой загрузке.
EDIT2:
Я МОГУ на самом деле напрямую закодировать их в файле PHP, но это станет беспорядочным, поскольку разные уведомления имеют разные фильтры, чтобы решить, отправлены они или нет, я могу дать вам пример:
Код: Выделить всё
new Notification("message");
class Notification
{
public function push_or_not()
{
if($this->isabout== "login" && checkIP())
{
\\ sth
}
else if()
else if()
//and so on
}
}
Я просто спрашиваю, лучше ли исходная более общая функция фильтра (поскольку я могу определить ее в КАЖДОМ уведомлении, но здесь я могу просто добавить тип и связать его с типом), хранящаяся непосредственно в данных уведомления (и любые улучшения), или последняя здесь лучше.
Кажется, здесь не так уж много риска безопасности. поскольку код здесь не связан с пользовательским вводом.
Подробнее здесь: https://stackoverflow.com/questions/770 ... pecific-ac
Мобильная версия