这个{$url_head} 我是重新建了一个文件 conn.php放到首页 每个文件调用
//路径处理
$url_this = "[url=http://]http://".$_SERVER[/url] ['HTTP_HOST'].$_SERVER['PHP_SELF']."?id=".$_GET['id'];
$smarty->assign("url_head",$url_this);
3、我们发现都是在每个页面后面传了一次get值 那么在那接这些get值呢 我们肯定要找每个页面的共同文件 不难想到init.php
[code]$currency = $_GET['currency'];
if($currency!=""){
$_SESSION['currency'] = $currency;
}
if($_SESSION['currency'] == '')
{
$_SESSION['currency'] = 'USD';
}
这个代码大家明白吧 我接到get值后 给了session 如果session不存在话 我们默认就是usd 这样每个页面都可以获得当前的session值 .
function price_format($price, $change_price = true)
{
$currency = $_SESSION['currency'];
$rate = explode(',',$GLOBALS['_CFG']['rate']);
if($currency == 'USD')
{
$price = $price*$rate[0];
}
if($currency == 'CNY')
{
$price = $price*$rate[3];
}
if($currency == 'EUR')
{
$price = $price*$rate[1];
}
if($currency == 'GBP')
{
$price = $price*$rate[2];
}
if($currency == 'AUD')
{
$price = $price*$rate[4];
}
if ($change_price && defined('ECS_ADMIN') === false)
{
switch ($GLOBALS['_CFG']['price_format'])
{
case 0:
$price = number_format($price, 2, '.', '');
break;
case 1: // 保留不为 0 的尾数
$price = preg_replace('/(.*)(.)([0-9]*?)0+$/', '123', number_format($price, 2, '.', ''));
if (substr($price, -1) == '.')
{
$price = substr($price, 0, -1);
}
break;
case 2: // 不四舍五入,保留1位
$price = substr(number_format($price, 2, '.', ''), 0, -1);
break;
case 3: // 直接取整
$price = intval($price);
break;
case 4: // 四舍五入,保留 1 位
$price = number_format($price, 1, '.', '');
break;
case 5: // 先四舍五入,不保留小数
$price = round($price);
break;
}
}
else
{
$price = number_format($price, 2, '.', '');
}
switch ($currency)
{
case 'USD':
return sprintf($GLOBALS['_CFG']['currency_format'], $price);
break;
case 'CNY':
return sprintf($GLOBALS['_CFG']['cprice_format'], $price);
break;
case 'EUR':
return sprintf($GLOBALS['_CFG']['aprice_format'], $price);
break;
case 'GBP':
return sprintf($GLOBALS['_CFG']['ybprice_format'], $price);
break;
case 'AUD':
return sprintf($GLOBALS['_CFG']['aoprice_format'], $price);
break;
}
}
$rate = explode(',',$GLOBALS['_CFG']['rate']);
这句是从数据库获得我们当时的参数 然后我们计算 同时返回值的时候我们用了系统设置的符号 解决问题 前台就这样搞定。版权声明: 本站资源均来自互联网或会员发布,如果侵犯了您的权益请与我们联系,我们将在24小时内删除!谢谢!
转载请注明: ecshop多语言切换多国货币切换