在没有eval函数的字符串上读取php代码

时间:2014-08-18 06:38:09

标签: php

我知道php中的eval()是用来评估字符串里面的php代码。我还用eval创建了一个简单的模板类。但是,在实践中这种方式并不舒服。很难维护。所以,这里以简单的简短代码为例

function render($view,$data)
    {
        extract($data);
        ob_start();
        include SOMEPATH . 'views/' . $view . EXT;
        $result = ob_get_contents();
        ob_end_clean();

        $result = str_replace('<cihtml name="apa">',file_get_contents( SOMEPATH . '/views/sample.php' ),$result);

        echo eval( '?>' . $result);
    }

我可以渲染它。但在某些情况下,eval会因特定原因而出现错误。

现在,我需要的是没有eval()函数的概念模板解析器。谢谢你的进步。

1 个答案:

答案 0 :(得分:0)

为什么重新发明轮子?大多数人使用框架来做这些事情。 调查 http://phalconphp.com/ http://docs.phalconphp.com/en/latest/reference/volt.html