U函数在rewrite模式下获取空变量后生成url出错

浏览:424 发布日期:2012/11/19
3.1.0 - 普通 - 未处理
functions.php里U函数在重写模式下,组装函数出错:
譬如 u('item/index',array('name'=>$name,'num'=>10));
当name变量为空时,生成的url为/item/index/name//num/10
在重写模式下url被辨认为/item/index/name/num/10造成参数错位。
问题出在U函数这里
if(!empty($vars)) { // 添加参数
foreach ($vars as $var => $val)
$url .= $depr.$var . $depr . $val;
}
但看到SAE的版本是用http_build_query组装,没有此问题
if(!empty($vars)) { // 添加参数
$vars = http_build_query($vars);
$url .= $depr.str_replace(array('=','&'),$depr,$vars);
}
评论()
后面还有条评论,点击查看>>