Это возможно через preg_replace
.Пример для include
:
function finclude($file){
return include($file);
}
$str = "Today is {include 'date.php'}.";
echo preg_replace("/\{include '(.*)\'}/e", 'finclude("$1")', $str);
date.php:
<?php return date('jS \of F'); ?>, 2011
вернет: Today is 20th of July.
Кто-нибудь знает какой-нибудь лучший способ (безопасный, скоростьпроизводительность), чтобы сделать это без /e
eval
?