Я полагаю, что для такого рода оценок вам необходимо реализовать полный синтаксический анализатор / лексер.Т.е. разбить все на токены, собрать AST и разобрать его.конечно, это зависит от того, насколько сложными могут быть ваши условия.
Но если вы хотите делать что-то вроде (=array.value)
, вам, вероятно, нужно кодировать свой собственный язык мини-сценариев.
Хотя это не совсем такСвязанный с PHP / HTML, я нашел это довольно полезным, чтобы понять, что на самом деле делают компиляторы / парсеры / лексеры.
Или, как вы упомянули, просто используйте php и evalэто самый простой способ.