• 技术文章 >后端开发 >php教程

    大侠一个Smarty的有关问题

    2016-06-13 10:06:06原创267
    请教各位大侠一个Smarty的问题
    如题,下面是源代码:
    index.php:
    include 'main.inc.php';
    header("Content-Type:text/html;charset=UTF-8");
    $sm->assign("time",date("Y-m-d H-i-s"));
    class User{
    function smarty_function_myname($param,&$smarty) {
    if (isset($param['name'])) {
    if ("xxx"==$param['name']) {
    return "我认识".
    }else {
    return "我不认识你!";
    }
    }
    }
    }
    $user = new User();
    $sm->register_function("myname", array($user,"smarty_function_myname"));
    $sm->display("index.tpl");
    ?>
    --------------------------------------------------------------------
    index.tpl:




    Insert title here


    <{myname name="xxx"}>


    ----------------------------------------------------
    为什么访问index.php的时候一直报错,错误如下:
    Fatal error: Call to undefined function smarty_function_myname() in F:\AppServ\www\Demo\templates_c\%%45^45E^45E480CD%%index.tpl.php on line 12

    PS:要是将index.php换成如下,可以正常使用:
    include 'main.inc.php';
    header("Content-Type:text/html;charset=UTF-8");
    function smarty_function_myname($param,&$smarty) {
    //$param是使用<{myname}>函数时的属性数组
    if (isset($param['name'])) {
    if ("徐小虾"==$param['name']) {
    return "我认识".date("Y-m-d H-i-s");
    }else {
    return "我不认识你!";
    }
    }
    }

    $sm->register_function("myname", "smarty_function_myname");
    $sm->display("index.tpl");
    ?>
    求高手指教...

    ------解决方案--------------------
    不懂~~都是用php处理,用smarty显示而已~
    array(&$object, $method)数组形式,其中&$object是一个对象的引用,而$method是它的一个方法;
    会不会是$sm->register_function("myname", array(&$user,"smarty_function_myname"));呢?
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:quot nbsp function myname Smarty
    上一篇:PHP mvc 哪有PHP的MVC项目,该怎么处理 下一篇:php解决方案
    Web大前端开发直播班

    相关文章推荐

    • 深入浅析PHP文件包含漏洞• nginx 配备php环境 • php下传文件的简单代码 • csdn发帖用的这个编辑器是什么解决方案 • Jquery应验表单
    1/1

    PHP中文网