TOP

视图引擎smarty 三

smarty类和对象的赋值与使用

  在smarty 3中,通过smarty模板对象的方法assign()对对象赋值

  

  可见,assign()既能对变量、数组赋值,也能对对象赋值;

  赋值之后,就可以在模板中使用这些类的对象了,使用方法和PHP相同

  例如,在上面赋值之后,直接在模板test.tpl中使用:

   {$myComputer->showArg('7890')}

 

smarty函数的使用

  在实际开发中,smarty的变量调节器功能可能不够用;这时解决办法有三种:

  1.使用PHP内置函数

  2.自定义函数

    使用registerPlugin注册到smarty模板中使用

  3.自定义插件

  现在具体讲解三种方法:(都是在模板中使用的)

    1.使用PHP内置函数

      向模板中传入变量

      

      现在在模板中使用PHP内置函数,将字符串中d替换成h,使用PHP内置函数str_replace(arg1,arg2,arg3)

      

      注意,内置函数的使用:

        1.1竖划线|之前的参数是内置函数的第一个参数,函数名之后的分别是第2参数,第3参数......

        1.2参数都是  :参数值1:参数值2 的形式

        1.3注意传入模板中的参数,在PHP内置函数中的位置

 

    2.自定义函数

      首先在PHP文件中定义自定义函数;

      然后通过smarty模板对象的registerPlugin()函数注册到模板中;

      最后在模板中调用函数;

      

      在模板中调用自定义函数

      

      注意:

        2.1在模板中调用的函数,参数可以有很多,参数名任意;

          所有的参数将会打包成数组赋值到自定义函数中的参数$arr(名称任意);

          这些参数名将成为数字的key

        2.2在自定义函数中,参数$arr是个数组

          此数组的键key,是在模板中调用自定义函数时传入的参数名;

 

posted @ 2015-11-02 10:21  RocketV2  阅读(170)  评论(0)    收藏  举报