gpt4 book ai didi

php - YII urlManager 使用多个参数重写单个 URL

转载 作者:搜寻专家 更新时间:2023-10-31 22:04:18 25 4
gpt4 key购买 nike

好的,删除我之前的问题并重新制定新的问题,否则没人会理解,抱歉。所以这里剩下的问题是:

所以我想将 URL 重写为单个单词,该单词适用于零、一个和两个参数,但不适用于 3:

带有 2 个参数的原始 url:

index.php?r=site/page&view=exposities&tijd=nu

url管理器规则:

'exposities_nu'=>array('site/page', 'defaultParams' => array('view' => 'exposities', 'tijd'=>'nu')),

结果:

/exposities_nu/

现在什么不起作用:

带有 3 个参数的原始 url:

index.php?r=site/page&view=exposities&tijd=vestiging&locatie=1

url管理器规则:

'knsm'=>array('site/page', 'defaultParams' => array('view' => 'exposities', 'tijd'=>'nu', 'locatie'=>'1')),

结果:

index.php?r=site/page&view=exposities&tijd=vestiging&locatie=1

有人知道为什么最后一个 url 没有缩短为/knsm/吗?

最佳答案

也许您没有在 URL 管理器中正确设置 url。看这个例子:

return array(
......
'components'=>array(
......
'urlManager'=>array(
'urlFormat'=>'path',
'rules'=>array(
'post/<id:\d+>/<title:.*?>'=>'post/view',
'posts/<tag:.*?>'=>'post/index',
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
),
),
),
);

此外,您还必须创建正确的 URL:

Yii::app()->createUrl('post/view', array(
'id'=>$this->id,
'title'=>$this->title,
));

关于php - YII urlManager 使用多个参数重写单个 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21760538/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com