Статичная ли страница? [bitrix api]

Недавно на форуме был задан вопрос, как можно определить статическую страницу в битриксе. Видимо у людей мало опыта и они просто не знают что изначально все публичные файла сайта битрикса статичные, а уже потом на них можно добавить вывод динамического содержимого.

Мне стало интересно как это сделать. Я давно подозревал о существовании класса для парсинга php файлов, он используется когда добавляется компонент на страницу например. В ядре я его нашел и там оказался статичный метод PHPParser::ParseScript($s_File);, он принимает содержимое файла в виде строки, так что используем $APPLICATION->GetFileContent($s_FilePatch);. Если есть компоненты, то вернется массив с описанием каждого. Вот что получилось:

function isStaticPage()
{
   global $APPLICATION;
   require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/classes/general/php_parser.php");

   $s_FilePatch    = CSite::GetSiteDocRoot(SITE_ID).($_SERVER['SCRIPT_NAME'] == '/bitrix/urlrewrite.php') ? $_SERVER['REAL_FILE_PATH'] : $_SERVER['SCRIPT_NAME'];
   $s_File        = $APPLICATION->GetFileContent($s_FilePatch);   
   $ar_Components    = PHPParser::ParseScript($s_File);
   return ( count($ar_Components) > 0 ) ? false : true;   
}