来源:未知 时间:2015-01-09 17:07 作者:xxadmin 阅读:次
[导读] 之前使用smarty的时候,通常是在php程序端读取数据(一般从 数据库 ),然后assign给模板的变量,才可以在前端使用这个变量。这样不是不好,只是数据多的时候php端的代码维护起来有...
之前使用smarty的时候,通常是在php程序端读取数据(一般从数据库),然后assign给模板的变量,才可以在前端使用这个变量。这样不是不好,只是数据多的时候php端的代码维护起来有点麻烦,特别是当存在很多模板块化得数据时。
复制代码 代码如下:
<?php /** * Smarty plugin * @package Smarty * @subpackage plugins */ /** * Smarty {load_data} function plugin * * Type: function<br> * Name: eval<br> * Purpose: evaluate a template variable as a template<br> * @link http://smarty.php.net/manual/en/language.function.eval.php {eval} * @param array * @param Smarty */ function smarty_function_load_data($params, &$smarty) { $class = (!isset($params['class']) || empty($params['class'])) ? 'cls_crud' : trim($params['class']); (!isset($params['table']) || empty($params['table'])) && exit('`table` is empty!'); $db = $class::factory(array('table' => $params['table'])); //var_dump($params); if (!empty($params['assign'])) { //把数据赋值给变量$params['assign'],这样前端就可以使用这个变量了(例如可以结合foreach输出一个列表等) $smarty->assign($params['assign'], $db->get_block_list(array($params['where']), $params['limit'])); } } ?>
复制代码 代码如下:
|
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com