Народ подскажите кто знает - в MODX есть такой замут если я правильно понял в сранице создаётся переменная <!-- #declare:arre <sp> --> <sp> [+tpl+] и к ней обращаются через isset( $declare["varre"] ) ? $declare["varre"] : "<!--tpl_separator-->" Если кто подробней разобрать может подскажите пожалуйста что тут к чему какие зависимости PHP: <?php ob_start(); ?> <!-- #declare:varre <sp> --> <sp> [+tpl+] <?php $tpl = ob_get_contents(); ob_end_clean(); $declare = array(); if ( strpos($tpl,"<!-- #declare:")===false) return $declare; $matches= array(); if (preg_match_all("/<\!-- \#declare\:(.*)[^-->]?-->/i",$tpl,$matches) ) { for($i=0;$i<count($matches[1]);$i++) { $tag = explode(" ",$matches[1][$i]); $tagname=trim($tag[0]); $tagvalue=trim($tag[1]); $declare[$tagname] = $tagvalue; } $tpl = str_replace($matches[0],"",$tpl); } return str_replace("[+tpl+]", "<div>ok</div>", explode( (isset($declare["varre"])? $declare["varre"]:"<!--tpl_separator-->"), $tpl)[1] );