多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
# 控制器定义 为了实现我们的业务逻辑,我们需要根据业务来划分模块,通常我们会将一个模块视作一个Controller控制器,将这个模块需要的所有功能方法都放在这个Controller文件中。 * * * * * 以下是默认的/app/Controller/IndexController.php控制器文件中的代码。 ~~~ class IndexController extends Controller{ public function __construct(){ } public function index(){ $data["hello"] = "<h1 style=\"text-align:center;\">欢迎使用MAGPHP微框架!</h1><br/>"; $this->display($data); } } ~~~ <br/><br/> ## 控制器文件命名 文件通常放在 **应用目录** 下 > **Controller目录** 下。 ~~~ 例1:app应用下Index控制器 = /app/Controller/IndexController.php 例2:app应用下News控制器 = /app/Controller/NewsController.php 例3:admin应用下User控制器 = /admin/Controller/UserController.php ~~~ <br/><br/> ## 控制器基本代码 ~~~ //自定义控制器类需要继承与Controller类 class IndexController extends Controller{ //这是控制器的默认方法 public function index(){ echo '这是Index控制器的index方法。在inex()方法里写你的业务逻辑代码。'; } } ~~~ <br/> 例:自定义News控制器 ~~~ class NewsController extends Controller{ //这是控制器的默认方法 public function index(){ echo '这是News控制器的index方法。'; } } ~~~ <br/><br/> ## 定义类方法 方法的命名需要与URL中方法参数值的名称完全一致,包括大小写与符号,否则将找不到方法运行。 例1:实现Index控制的getuser()方法,访问URL为http://localhost/index.php/Index/getuser ~~~ class IndexController extends Controller{ public function getuser(){ echo '这是Index控制的getuser方法'; } } ~~~ 例2:实现News控制的body()方法,访问URL为http://localhost/index.php/News/body ~~~ class NewsController extends Controller{ public function body(){ echo '这是News控制的body方法'; } } ~~~ <br/><br/>