Значит что..
if нужно заменить на
if(, в конец строки добавить
).
Внутреннюю часть разобрать так: если "слово" начинается на
$, потом числобуквенные символы без пробелов или символ "." (точка), и это "слово" не стоит в кавычках, значит это переменная (ее будем разбирать как переменную - убирать из начала
$, explode'ить по "."(точкам), и заменять на значения из массива $this->vars).
Логические знаки и символы у нас остаются неизменными (==, !=, ||, &&, ....). Ровно как неизменными остаются все скобочки и строки (набор символов в апострофах или кавычках).
Итого у нас получилось 2 действия:
1. Доставляем к if'у скобочки (в начало и в конец)
2.
Работаем с переменными
Первое действие провернуть не сложно, второе тоже не очень
![smile.gif](http://phpforum.ru/html/emoticons/smile.gif)
Если не решишь, подмогну.
ЗЫ. подскажу лишь, что чтобы начать вытаскивать переменные, нужно сначала убрать все строки (набор символов, заключенных в кавчки/апостофы, при этом не забудь про экранированные символы внутри строк).