伪静态生成求求求解???

#1 fosf

我想生成的最终效果如下:

http://www.baidu.com/htc-hero-g3-view-180.html

view 是指 动作

$flname="htc hero g3"  是所属的分类名 $flname  从数据库所得

$pid="180"  是所属产品ID   

http://www.baidu.com/<{spUrl controller=index action=view id=$pid flname=$flname}>

我怎样得到我想要的效果呢? 难道要改spurl嘛

求方法!!!!!!!!!!!
:hug::hug: :hug: :hug: :hug: :hug: :hug: :hug:

2011-09-27 17:54:41

#2 jake

先看手册,谢谢
http://www.speedphp.com/interaction-diy-rewrite.html

2011-09-27 19:57:46

#3 fosf

按手册配置了下,效果是基本上达到了。

我想问下,可否在一个入口文件中出现多个@

2011-09-28 10:31:30

#4 fosf

按手册配置了下,效果是基本上达到了。

我想问下,可否在一个入口文件中出现多个@

2011-09-28 10:31:39

#5 fosf

我是指map映射中

2011-09-28 10:36:38

#6 jake

不可以多个@,但是一个@是可以做到很多个@的功能

2011-09-28 12:12:48

#7 fosf

:)  弄个例子来吧。真的很需要。

谢谢

2011-09-28 12:22:51

#8 fosf

不可以多个@,但是一个@是可以做到很多个@的功能
jake 发表于 2011-9-28 12:12
这个如何操作,弄个例子来吧。谢谢

 
'spUrlRewrite' => array(
'suffix' => '.html',
'sep' => '-',
'map' => array(
  'groups' => 'group@index',
  'cms' => 'main@index',
  '@' => 'user@index',
),
'args' => array(
  'groups' => array('tid'),
  '@' => array('username'),
),
),


上面是你的例子,是特殊形式@对应到一个 user@index
怎么样才能出现多个特殊形式的功能,指定到不同的动作 admin@index  AND  bbs@index  AND  products@index

麻烦JACK了,这些对我很重要,其它人也应该很需要吧

2011-10-03 13:47:32

#9 jake

可以简单理解成条件判断。
其实看你说明的,你希望的不是@映射,还是普通映射,只是对映射很不了解而已。

比如说
http://web.com/admin_user1.html
http://web.com/bbs_user1.html

那么在user@index接收的时候,就是$username = admin_user1 和 $username = bbs_user1
要注意你的设置分隔符是'sep' => '-' 而不是 _,由于你要做多个@(一般不会有这种情况),那么我只能假设用_了。

然后就简单了
if(substr($username, 5) == 'admin'){
执行admin@index
}else( substr($username, 3) == bbs ){
执行bbs@index
}

===================
强调一下,一般开发和日常使用不会用到以上的情况方法(理解网址和对应关系就会明白),这里只是说明一下这种可能性。

2011-10-03 16:23:32