function smarty_function_eightball($params, &$smarty) { $answers = array('Yes', 'No', 'No way', 'Outlook not so good', 'Ask again soon', 'Maybe in your reality'); $result = array_rand($answers); return $answers[$result]; } ?>
which can be used in the template as: 在模板中调用方法如下:Question: Will we ever have time travel? Answer: {eightball}.
上面这个例子怎么通不过啊?它跟register_function有何不同?
请不要问这么奇怪的问题。你又能告诉我下面这两句sql有何不同?为何第二句通不过? select * from table where id=5wo yao * cong table dang id=5
如果使用 <?php function smarty_function_eightball($params, &$smarty) { } ?> 的写法。而且不愿意使用register_function的话。必须要将这个函数单独存成一个文件 ,文件名必须用function.eightball.php并放在smarty目录下的plugnins目录下。
$tpl=new smarty;
function test($param,$smarty)
{
echo $param['id'];
}
$tpl->register_function('test','test');
----------------
模板
{{test id=1}}
{
$answers = array('Yes',
'No',
'No way',
'Outlook not so good',
'Ask again soon',
'Maybe in your reality'); $result = array_rand($answers);
return $answers[$result];
}
?>
which can be used in the template as: 在模板中调用方法如下:Question: Will we ever have time travel?
Answer: {eightball}.
上面这个例子怎么通不过啊?它跟register_function有何不同?
select * from table where id=5wo yao * cong table dang id=5
<?php
function smarty_function_eightball($params, &$smarty)
{
}
?>
的写法。而且不愿意使用register_function的话。必须要将这个函数单独存成一个文件
,文件名必须用function.eightball.php并放在smarty目录下的plugnins目录下。
function test($pararm,$smarty)
{
extract $pararm;
$a=array(1,1,2,4,4);
return $a
}
$tpl->register_function('test','test');
----------------
模板
函数返回是一数组,模版中怎么显示它呢?
可以用if (smarty.section.smarty_key.index mod 2 == 0)来判断
对于不同行,用不同的颜色
section name=art loop=$a
$a[art]
/section
这样子的
但上面不行啊,怎么办?
section name=art loop=$a
$a[art]
/section
这样子的
但上面不行啊,怎么办?
_____________________________
就是这样的写法啊?
有什么问题吗?
$tpl=new smarty;
function test($pararm,$smarty)
{
extract $pararm;
$a=array(1,1,2,4,4);
return $a
}
$tpl->register_function('test','test');
为什么不用assign 把函数处理的结果传过去?手册上是这样说section的:
属性 类型 描述
loop [$variable_name] 决定循环次数的变量名称
{insert name="functionName" params1 = P1 params2 = P2 }
解释一下
getBanner:函数名
params1:参数一,等号右边是在代码里assign出来的
params2:同上。代码中:
function insert_functionName($p1,$p2)
{
echo $p1.$p2;
}
注意函数名
{insert name="functionName" params1 = P1 params2 = P2 }
解释一下
functionName:函数名
params1:参数一,等号右边是在代码里assign出来的
params2:同上。代码中:
function insert_functionName($p1,$p2)
{
echo $p1.$p2;
}
注意函数名