请教一个自定义伪静态的问题
发布于:2022-01-17 09:50:54
#1 阳光小老鼠
http://localhost/billlook//yearmonth/2011-01.htmhttp://localhost/billlook/2010.htm会出现重复的斜杠
我是这样设置的
'billlook' => array('yearmonth'),
'billlook' => array('year'),
我在想是不是有2个相同的不行呢,另外一个地址就不会。第一会是因为YEARMONTH没有屏蔽掉,但只能选择其中的一个 好奇怪
2011-02-19 18:50:01
#2 jake
伪静态设置不能有两个相同的(参数不同),因为缩短参数args这个设置生成的地址就是没有了参数名称,那么单从URL是无法分辨是哪个参数。所以只能是一个设置。
你可以这样设置
'billlookmonth' => array('yearmonth'),
'billlookyeah' => array('year'),
或者只设置一个
'billlookmonth' => array('type', 'num'),
然后再根据type来判断是month还是year,生成的地址同样比较容易解读
http://sss.com/month/11.htmlhttp://sss.com/year/2011.html
2011-02-19 21:04:58
#3 阳光小老鼠
回复 2 jake jack 我发现一个很有趣的问题了
'map' => array(
'billadd' =>
'billing@bill_add',
'billlook' =>
'billing@bill_look',
'billsearch' =>
'billing@bill_search',
'billview' =>
'billing@bill_view',
'billyear' =>
'billing@bill_search_year',
'billviewedit' =>
'billing@bill_viewedit',
'billdelete' =>
'billing@bill_delete',
),
'args' => array(
'billlook' => array('yearmonth'),
'billlook' => array('year'),
'billviewedit' => array('viewid'),
'billdelete' => array('deleteid'),
),
),
),
入口文件这样 会出现斜杠
如果变成这样就好了
'ext' => array(
'spUrlRewrite' => array(
'suffix' => '.htm',
'sep' => '/',
'map' => array(
'billadd' =>
'billing@bill_add',
'billlook' =>
'billing@bill_look',
'billsearch' =>
'billing@bill_search',
'billview' =>
'billing@bill_view',
'billyear' =>
'billing@bill_search_year',
'billviewedit' =>
'billing@bill_viewedit',
'billdelete' =>
'billing@bill_delete',
),
'args' => array(
'billviewedit' => array('viewid'),
'billdelete' => array('deleteid'),
),
),
),
2011-02-20 01:42:49
#4 jake
斜杠在sp的伪静态里面,是分隔符。由于你设置两个重复的映射,只生效一个。所以当使用第二个的时候,spUrl还是会按第一个来生成,那么就会有一个空白的分隔符,那是第一个规则的参数——但是没有设置。
2011-02-20 08:43:03