在线客服,智能在线客服,在线客服系统,客服机器人,智能客服,智能机器人客服,电商客服系统,智慧客服,免费电话,微信在线客服,网站在线客服软件,网络营销电话,手机在线客服,微客服,快商通

咨询热线:400-027-0592 

php smarty使用自定义函数

分类:快商学院 时间:2012-09-27 作者:


QQ空间 新浪微博 腾讯微博 更多

 

使用了smarty要使前台显示不受局限,有时要用到自定义函数,当然也有其他办法,比如做下载功能时,显示列表或者详细时我们可能需要显示他的大小,当然你也可以事先存入数据库,或者列表时动态处理进循环数组,还可以用自定义函数在模板页上使用,但是到底怎么用呢,可以到网上找到smarty手册,看例子:

$smarty->register_function("date_now", "print_current_date"); function print_current_date ($params) { extract($params); if(empty($format)) $format="%b %e, %Y"; return strftime($format,time()); } // now you can use this in Smarty to print the current date: {date_now} // or, {date_now format="%Y/%m/%d"} to format it. // 现在你可以在模板中这样显示日期:{date_now} // 或者用{date_now format="%Y/%m/%d"}的格式进行格式化

很好理解吧,看我的,我这边要做一个产品属性,有产品表,属性表,可以关联查询,好吧,我们现在用自定义函数实现
服务器端代码

$smarty->register_function("show_attrvalue","getAttrVal"); function getAttrVal($params){ extract($params); $conn=new PDO("mysql:host=".DB_HOST.";dbname=".DB_NAME."",DB_USER,DB_PASSWORD);; //产品会很多,productid是动态的,我们可以这样,在模板页面上给productid赋值,试了没成功 if(empty($productid)){ global $nid; $productid=$nid; } $stmt=$conn->prepare("select attributevalue from ".DB_FIX."productattribute where productid=? and  attributeid=?"); $stmt->execute(array($productid,$attributeid)); return $stmt->fetchColumn(); }

客户端代码

{show_attrvalue productid=47 attributeid=1}
现在掌握了。

返回列表>>

上一篇:使用smarty出现页面变形的原因

下一篇:web2.0大航海时代


相关新闻

快商通与中国电信再度升级合作

马年佳音频传,喜讯振奋人心

快商通2014新年祝福暨春节放假通知

快商软件喜获“全国中小企业生产经营运行监测厦门样本企业”称号

快商通【在线客服】v3.2.2.21版本升级公告

客服一对一服务
30万成功案例
CCTV央视特别报道
国家高新技术企业
全国统一咨询热线:400-027-0592