2016-05-19 14:11:46 9440次浏览 5条回答 0 悬赏 10 金钱

使用驼峰命名控制器和方法,如何在url使用
控制器名字ConNameController.php

public function actionActionName() {
    echo 'hello world';
}

怎么设置才能是路由是 /conname/actionname

最佳答案

  • sgj773624926 发布于 2016-05-20 09:28 举报

    这个事情很难做,你可以查看源码Module.php 560行,其内容如下:

    $className = str_replace(' ', '', ucwords(str_replace('-', ' ', $className))) . 'Controller';
    

    可以看到'-'是直接写在里面的,除非你要修改源码,或者将相关的内容都覆盖掉(如继承Application,重写相应的方法,但不排除会造成其他bug)
    注:这里只列出了controller名字解析的地方

    https://github.com/yiisoft/yii2/blob/master/framework/base/Module.php#L560

您需要登录后才可以回答。登录 | 立即注册
疯狂丨蜗牛
助理

疯狂丨蜗牛

注册时间:2015-09-17
最后登录:2018-12-14
在线时长:7小时59分
  • 粉丝1
  • 金钱70
  • 威望0
  • 积分140

热门问题