smarty相关

今天帮助一个朋友解决一个关于smarty问题,当然是临时性的,在这里记录一下(smarty好久没用了,或许我这个方法是太傻瓜,之后有时间在改改)

我朋友的需求要支持以下功能:

 

$smarty->assign('v', 'hi');

$val = $smarty->fetch('<#--$v-->');

echo $val;

 

冒似没用过,不管他smarty原本支不支持,改了在说(我是流氓-_-/)

 

打开Smarty.class.php,在方法 _parse_resource_name 里 加入:

 

if (strncmp($params['resource_name'],'str://', 6) == 0){

            $params['resource_type'] = 'string';

          }

原本类型好像只是文件,这里加个字符型,这里用'str://'来判断是不是string

然后在下面一个ID判断里加入:

elseif ($params['resource_type'] == 'string') {

             return true;

            }  

(当然这里可以加些判断或验证进去,为了减省时间我就不管了)

 

然后定位到方法 _fetch_resource_info

在switch 里加入:

case 'str':

                    $params['source_content']=substr($params['resource_name'], 6);

                     $params['resource_timestamp'] = time();

                    $_return = empty($params['source_content'])?false:true;

                    break;

 

OK,按需解决朋友的问题

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值