在ecshop模板使用自定义函数

可以增加自定义函数,在模板直接调用,例如: {$userId|get_user_name} 或 {$imgUrl|set_width_height:100:200}

 

案例一(处理图片):

 

1.模板里使用{$imgurl|getpic:100:200}

 

2.includes/lib_base.php里面增加函数

function getpic($str, $width, $height){
 $len= stripos($str, '.');

 if($len !== false){
  $str= substr($str, 0, $len).'_'.$width.'-'.$height.stristr($str, '.');
   return $str;
 }
 else{
  return '/images/blank.gif';
 }
}
 

3.includes/cls_template.php里624行

case 'strip_tags':
 $p = 'strip_tags(' . $p . ')';
 break;
 后面增加处理函数

 case 'getpic':
 $p = 'getpic(' . $p . ",$s[1],$s[2])";
 break;
 

 

案例二(根据地区ID返回名称):

1.模板里使用{$provinceId|get_region_name}

 

2.includes/lib_base.php里面增加函数

/**
 * 根据区域ID返回区域名称
 *
 * @params  integer  $id
 *
 * @return
 */
function get_region_name($id){
	$id = intval($id);
	$sql = "SELECT region_name FROM " . $GLOBALS['ecs']->table('region') . " WHERE region_id = $id";
	$list = $GLOBALS['db']->getRow($sql, true);
	return $list['region_name'];
}
 
3.includes/cls_template.php里624行
case 'strip_tags':
	$p = 'strip_tags(' . $p . ')';
	break;

 //后面增加处理函数:开始
case 'get_region_name':
	$p = 'get_region_name(' . $p . ")";
	break;
//后面增加处理函数:结束

 default:
	# code...
	break;
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值