URL的Yii模式匹配

时间:2014-01-25 20:59:55

标签: php yii url-rewriting custom-url

我需要在Yii应用程序中处理SEO友好的URL。模式中的URL结构:“domain.com/url-string/uniqueid”。例如:

domain.com/properties-in-dubai/325fgd
domain.com/properties-in-USA/4577ds6
domain.com/properties-in-india/567dew
domain.com/apartments-in-anderi-mumbai/645fki

上面的URL字符串和ID由我们填充。当用户访问此URL时:

  1. 首先需要验证网址格式。
  2. 第二次提取我和URL字符串并与我的数据存储区匹配。
  3. 第三,当我们在数据存储中存在以上URL并将引用的参数传递给现有搜索页面时。
  4. 请帮助我解决这个问题并让我睡觉。

1 个答案:

答案 0 :(得分:1)

首先,向urlManager应用程序配置添加新规则。

'rules' => array(
    '<slug>/<id:\d+>' => 'property/view'
    // ...
)

然后你可以在动作中检索slug和ID:

class PropertyController extends CController
{
    public function actionView($slug, $id)
    {
        $id = (int) $id;

        // Check if $id, $slug exist; replace line below
        $exists = true;

        if($exists){
            // Redirect to elsewhere
            $this->redirect();
        }
    }
}