Это сложно объяснить. У меня есть ассоциативный массив, для которого я хочу запустить набор правил, чтобы вернуть true или false.
Мне было интересно, есть ли где-нибудь библиотека, позволяющая мне сравнивать правило (или набор) с массивом. Почти как SQL, за исключением того, что у меня есть запись, мне просто нужно посмотреть, вернет ли SQL ее или нет.
Например:
$subject = array('name' => 'John Smith', 'age' => '44');
$formula = "name LIKE 'John%' AND (age = 44 OR age = 45)";
if(match($formula, $subject))
return true;
else
return false;
Массив тем НЕ из базы данных, а на самом деле из сообщения формы, иначе я бы просто запустил SQL, и если бы он вернул правильную запись, это было бы правдой. Кроме того, это то, что я хотел бы часто использовать с разными ассоциативными массивами, поэтому добавление в таблицу, а затем выполнение запроса для получения той же записи будет невозможно. В принципе, я не могу использовать базу данных.
$formula
— откуда берется эта строка? Не могли бы вы изменить формат или (в идеале) использовать массив? - person DaveRandom   schedule 13.12.2011