PHP Smarty 模板 自定义函数function和块函数block

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP Smarty 模板 自定义函数function和块函数block相关的知识,希望对你有一定的参考价值。

自定义函数

function.yangA.php页面 采用插件形式调用

<?php
/*
 * 文件名  
 * function.函数名.php    function.yangA.php
 * 声明的函数名规则
 * smarty_function_函数名()  smarty_function_yangA
 * 参数
 * 1.数组 array
 * 2.smarty
 * 模板使用
 * <{yangA content="I am Mr.Yang" color="red" size="7" line="6"}>
 * 
 */
        function smarty_function_yangA($args, $smarty){
            $str = ‘‘;
            for($i=0;$i<$args[‘line‘];$i++){
                $str .="<font color=‘{$args[‘color‘]}‘ size=‘{$args[‘size‘]}‘>{$args[‘content‘]}</font><br/>";
            }
            return $str;
        }


模板tpl.php页面

<{yangA color="pink" content="I am Mr.Yang AAAAA"  line="3"  size="7" }>

浏览器输出

I am Mr.Yang
I am Mr.Yang
I am Mr.Yang
I am Mr.Yang AAAAA
I am Mr.Yang AAAAA
I am Mr.Yang AAAAA

==========================================================


自定义函数

块函数block页面

<?php
/*
 * 文件名  
 * block.函数名.php    block.worldA.php
 * 声明的函数名规则
 * smarty_block_函数名()  smarty_block_worldA
 * 参数
 * 1.属性关联数组
 * 2.标记中间的内容
 * 3.参数是smarty
 * 4.引用参数  开始true 结束false
 * 模板使用
 * <{worldA line="3" color="blue" size="7"}>
 * <{/worldA}>
 * 
 */
        function smarty_block_worldA($args, $content,$smarty,&$flag){
            if(!$flag){
            $str = ‘‘;
            for($i=0;$i<$args[‘line‘];$i++){
                $str .="<font color=‘{$args[‘color‘]}‘ size=‘{$args[‘size‘]}‘>{$content}</font><br/>";
            }
    
            return $str;
            }
        }

模板tpl.php页面

<{worldA line="3" color="blue" size="7"}>
I AM BLOCK!
<{/worldA}>

浏览器输出

I AM BLOCK!
I AM BLOCK!
I AM BLOCK!

==========================================================



本文出自 “津沙港湾” 博客,请务必保留此出处http://11410485.blog.51cto.com/11400485/1844004

以上是关于PHP Smarty 模板 自定义函数function和块函数block的主要内容,如果未能解决你的问题,请参考以下文章

php模板引擎smarty

PHP 自定义 Smarty 模板引擎类 高洛峰 细说PHP

smarty模板内容

smarty模板基础2

3.自定义函数

smarty 自定义函数