加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

使用CamelCase动作名称时,使用php – Yii2路由

发布时间:2020-12-13 16:26:27 所属栏目:PHP教程 来源:网络整理
导读:如果你说下面的控制器结构 ?phpnamespace appcontrollers;use Yii;use yiiwebController;/** * Test controller */class TestController extends Controller{ public function actionMyaction(){ ... //action logic } public function actionMyAction(){
如果你说下面的控制器结构
<?php
namespace appcontrollers;

use Yii;
use yiiwebController;
/**
 * Test controller
 */
class TestController extends Controller
{
    public function actionMyaction(){
       ...
       //action logic
    }

    public function actionMyAction(){
       ... 
      //action logic
    }
}

可以使用路径example.com/test/myaction访问第一条路线

每个Yii 1.x逻辑的第二条路线应该可以从路径example.com/test/myAction访问
在Yii2.x路由中使用连字符结构,只能从example.com/test/my-action访问

有没有办法在Yii2中启用使用camelCase结构的路由,最好不用路由类扩展?

这是重要的,因为它打破了所有的链接(当然是在互联网上)向后兼容性,因此Yii1.x应用程序永远不能迁移到Yii2.x,即使代码被完全重写.这个变化的原因是什么?

我也曾经提过这个改变,但是最终我发现它使URL更容易阅读.我不确定在Yii1中有一个区分大小写的路线,在Yii2中,我没有这个问题(或是一个问题的印象)了.

我不知道确切的原因,但我可以告诉你,对于SEO,最好是 – 分开单词而不是一个大字.

当我在yii2中重写了一个应用程序时,我把url的所有老路线放在我需要维护的路由器中.

'urlManager' => [
            'class' => 'yiiwebUrlManager','enablePrettyUrl' => true,'showScriptName' => false,'rules' => [
.................................................
                'site/registerInterest' => 'site/register-interest',.................................................

            ],],

所以我的旧链接现在工作很好.如果你想从旧的路线到新的路线,以保持SEO果汁,你也可以在.htaccess中设置301重定向.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读