Конечно можно и для этого есть несколько вариантов решения:
1) Написать расширение, которое будет внедряться и собираться в требуемый опкод. Подробнее можно почитать на сайте пыха про Zend и его инструкции. Увы, данной информацией я не владею, так что и помочь не могу.
2) Через хук на автолоадер (например композера) перехватывать подключаемые файлы,
рестримить их на свой протокол, затем написать LL(k) парсер с (E)BNF или воспользоваться готовыми (например
AST парсер от Никиты), стоить дерево, находить нужные вставки внутри и заменять на свои, кешируя результирующие файлы (можно обойтись и без AST, простой заменой потока токенов, но такое решение будет менее надёжным).
Но я подозреваю, что оно не нужно, верно? По-этому есть третий вариант:
3) Т.к. я подозреваю, что данный вопрос имеет смысл для вьюх, то надо просто добавить своё правило/расширение в шаблонизатор, которым вы пользуетесь:
Твига,
Блейда или чего-нибудь ещё (т.к. вы не указали что именно используете).
Больше вариантов, насколько я помню - нет.