Я пишу так, но моя программа прерывает работу:
HTML::Template::Pro->new(filename=>$file, filter => $filter ? $filter : undef);
Что не так в коде выше?
В основном я хочу, чтобы условный фильтр выполнял encode_entities() на каждом TMPL_VAR.
encode_entities()
TMPL_VAR
undef не является допустимым значением для filter. Вместо этого вообще пропустите параметр фильтра, например:
undef
filter
HTML::Template::Pro->new(filename=>$file, $filter ? (filter => $filter) : ());