Парсер SSI, написанный на PHP?

Хорошо, это может показаться немного безумным, но потерпите меня здесь на минутку.

Я ' m работает над сайтом, на котором стандартом является использование SSI для включения верхних и нижних колонтитулов страниц и меню. Включенные файлы используют условные выражения SSI для обработки различных браузеров, некоторые #include вложения и некоторые хитрости #set / #if для выделения текущей страницы в меню. Другими словами, это больше, чем просто директивы #include в SSI.

Я уверен, что некоторые могут поспорить с эстетикой, но на самом деле это работает довольно хорошо для статического HTML.

Теперь проблема: я ' Мне бы хотелось просто "# включить" те же HTML-файлы заголовка и нижнего колонтитула, проанализированные SSI, из моих сценариев PHP, чтобы избежать дублирования кода и при этом сохранить единообразный вид сайта. Если бы PHP работал в обычной среде mod_php, я бы смог сделать это с помощью функции PHP virtual (). К сожалению, сайт использует FastCGI / suexec для запуска PHP (так что каждый VirtualHost может работать от имени другого пользователя), и это нарушает работу virtual ().

Я использовал довольно простой синтаксический анализатор SSI, написанный мной на PHP (он обрабатывает #includes и несколько действительно простых операторов #if), но мне бы хотелось более общего решения. Итак, прежде чем я сойду с ума и напишу какой-нибудь, вероятно, неполноценный, более полный парсер SSI, знает ли кто-нибудь о полном парсере SSI, написанном на PHP? Естественно, я также открыт для других решений, которые работают с ограничениями, которые я обозначил.

Большое спасибо за ваше время.

6
задан Rick Koshi 10 February 2011 в 02:09
поделиться