smarty里如何连接变量呢? 例如,原来{$lang.member_1}表示一级会员,我现在想这样做,$user_level=1{$lang.member_$user_level}让其解析出来等于{$lang.member_1} 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 section loop=$arry name=取值$arry[name].属性的值 {$lang.member_$user_level} 这是两个变量,怎么能合算成一个变量呢?语法上也不过不去 用数组,section嵌套循环 我们在使用smarty的时候,经常会碰到变量组合成新变量的时候,例如aaa$b,$b是可变值,我们需要得到$aaa1,$aaa2,$aaa3等变量.但是在smarty中,这样的变量连接写法是不允许的.针对这样的问题,我给出下面几种情况的解决方案.注:<?{和}?>是我定义的smarty定界符,等同于{和},希望大家理解.引用1.针对数组的变量连接问题:<?php$arrMType = array();$arrMType[1] = '高交会展';$arrMType[2] = '学术会议';$arrData[id] = 1;?>在smarty中.$arrMType[$arrData.id]是错误的.解决方案:<?{foreach from=$arrType key=key item=value}?><?{if $key == $arrData.type_id}?><?{$value}?><?{/if}?><?{/foreach}?>2.针对文件引用的变量连接问题:<?PHP$page="index";?> 在smarty中,下面的写法都是错误的.<?{include file=$page.html}?> //这样不能执行成功 <?{include file=$page|cat:".html"}?> //还是不行 解决方案:<?{include file="$page.html"}?> 3.针对函数传递的变量连接问题:<?PHP$arrGWeb['module_id'] = 'news';?>要在smarty中实现:<?{url url = "/news/list?type_id=1"}?>错误的写法:<?{url url = "/$arrGWeb.module_id/list?type_id=1"}?>正确的写法:<?{url url = "/`$arrGWeb.module_id`/list?type_id=1"}?>注意:"`"这个符号,是数字1前面的那个符号,不是单引号.-----------------------------------http://www.jiemengwu.com/ 解梦屋 http://www.phpzy.com/php/ 绿色php资源 php模式下就可以实现,在smarty下应该不能吧。 如何使用PHP 在线转换 ico 至 PNG 呢。。求高手解答。 关于获取QQ邮箱验证码的问题??? 一个函数问题 怎么逃避网警 刚开始学php,实在不懂得一个问题! 求随机生成 如 aPwL96 这种形式的密码 欢迎讨论最佳 php能不能连接多个数据库 win2k下apache+php+mysql 的问题 请帮忙!万分感谢! test.php?user_id=XXX问题! PHP+Oracle 执行SQL语句时如何判断查找不成功和没有找到值 一句话为phper做个定位(畅所欲言)!!! 很奇怪的编码问题!大家来看!
取值
$arry[name].属性的值
这是两个变量,怎么能合算成一个变量呢?
语法上也不过不去
用数组,section嵌套循环
注:<?{和}?>是我定义的smarty定界符,等同于{和},希望大家理解.
引用
1.针对数组的变量连接问题:
<?php
$arrMType = array();
$arrMType[1] = '高交会展';
$arrMType[2] = '学术会议';
$arrData[id] = 1;
?>
在smarty中.
$arrMType[$arrData.id]是错误的.
解决方案:
<?{foreach from=$arrType key=key item=value}?>
<?{if $key == $arrData.type_id}?><?{$value}?><?{/if}?>
<?{/foreach}?>
2.针对文件引用的变量连接问题:
<?PHP
$page="index";
?>
在smarty中,下面的写法都是错误的.
<?{include file=$page.html}?> //这样不能执行成功
<?{include file=$page|cat:".html"}?> //还是不行
解决方案:
<?{include file="$page.html"}?>
3.针对函数传递的变量连接问题:
<?PHP
$arrGWeb['module_id'] = 'news';
?>
要在smarty中实现:
<?{url url = "/news/list?type_id=1"}?>
错误的写法:
<?{url url = "/$arrGWeb.module_id/list?type_id=1"}?>
正确的写法:
<?{url url = "/`$arrGWeb.module_id`/list?type_id=1"}?>
注意:"`"这个符号,是数字1前面的那个符号,不是单引号.-----------------------------------
http://www.jiemengwu.com/ 解梦屋 http://www.phpzy.com/php/ 绿色php资源