1. 入口及简单说明

1.1 系统默认控制器

tp 和 Laravel 不同路由是非强制的路由,也可以设置强制路由。打开 application\index\controller\Index.php 这是Index 模块下的 默认的控制器文件,下面的代码展示其中的方法

  1. <?php
  2. namespace app\index\controller;
  3. class Index
  4. {
  5. /**
  6. * 默认走的路由控制器
  7. * 访问:http://tp5.1.com/index.php/index
  8. * tp5.1.com
  9. */
  10. public function index()
  11. {
  12. // return '<style type="text/css">*{ padding: 0; margin: 0; } div{ padding: 4px 48px;} a{color:#2E5CD5;cursor: pointer;text-decoration: none} a:hover{text-decoration:underline; } body{ background: #fff; font-family: "Century Gothic","Microsoft yahei"; color: #333;font-size:18px;} h1{ font-size: 100px; font-weight: normal; margin-bottom: 12px; } p{ line-height: 1.6em; font-size: 42px }</style><div style="padding: 24px 48px;"> <h1>:) </h1><p> ThinkPHP V5.1<br/><span style="font-size:30px">12载初心不改(2006-2018) - 你值得信赖的PHP框架</span></p></div><script type="text/javascript" src="https://tajs.qq.com/stats?sId=64890268" charset="UTF-8"></script><script type="text/javascript" src="https://e.topthink.com/Public/static/client.js"></script><think id="eab4b9f840753f8e7"></think>';
  13. return 'Hello World';
  14. }
  15. /**
  16. * http://tp5.1.com/index.php/hello/xs
  17. */
  18. public function hello($name = 'ThinkPHP5')
  19. {
  20. return 'Hello ' . $name;
  21. }
  22. }

访问默认配置好的域名 tp5.1.com
image.png

不配置路由的情况下,这样访问
image.png

同理对于另外一个方法
image.png

1.2 创建自定义控制器文件

参照系统默认的控制器规则,在 application\index\controller\Goods.php 定义如下方法

  1. <?php
  2. namespace app\index\controller;
  3. class Goods
  4. {
  5. // 默认方法
  6. public function index()
  7. {
  8. echo 'goods-index-function()';
  9. }
  10. }

postman测试如下:最后加不加入 /index 都是可行的,index 表示走默认的 action
image.png

1.3 注意驼峰

在使用驼峰命名的 控制器类时,我们需要注意。访问使用下划线作为单词的分界符

  1. <?php
  2. namespace app\index\controller;
  3. class UserInfo
  4. {
  5. // 默认方法
  6. public function index()
  7. {
  8. echo '驼峰命名的,控制器访问需要注意使用下划线作为单词的分界符';
  9. }
  10. }

错误的方式
image.png

正确的方式
image.png