swoft学习笔记之控制器

创建控制器

主要通过 @Controller 注解实现,代码可以放在任意位置,但为了统一标准,建议放在 app/Http/Controller 目录下
使用注解@Controller(prefix=“路由前缀”),需要引入 Controller 类

路由绑定

swoft 并没有采用配置文件的方式来配置路由,而是采用了注解,可以使用 @RequestMapping 注解添加路由
使用注解 @RequestMapping ,需要引入该类,其中相关属性如下:

  • route 指定路由
  • method 指定请求方式(GET、POST、PUT、PATCH、DELETE、OPTIONS、HEAD)
  • params 指定path变量正则匹配限制
请求对象

请求对象 Request 为 Swoft\Http\Message\Request

获取请求对象
  • 通过控制器方法参数注入 (Request $request)
  • 通过请求上下文获取 Swoft\Context\Context::mustGet()->getRequest()
请求对象获取请求数据

由于获取请求数据内容较多,后面单独讲解,暂时缺省

响应对象

响应对象 Response 为 Swoft\Http\Message\Response

获取响应对象
  • 通过控制器方法参数注入 (Response $response)
  • 通过请求上下文获取 Swoft\Context\Context::mustGet()->getResponse()
响应对象返回数据

由于获取请求数据内容较多,比如设置状态码,输出字符串内容,设置响应数据格式,输出数组,重定向等,后面单独讲解,暂时缺省

参数验证

永远不要相信前端传输的数据
swoft 提供系统自带的验证规则进行声明验证器以及自定义验证器的功能,当然也支持自定义验证器规则,此处缺省,后续文章会详细介绍

代码样例
基类Controller
<?php   declare(strict_types=1);


namespace app\Http\Controller;

use Swoft\Http\Message\Request;

interface BaseController
{
	public function index(Request $request);
	
	public function show(Request $request);
	
	public function edit(Request $request);
	
	public function update(Request $request);
	
	public function create();
	
	public function store(Request $request);
	
	public function destroy(Request $request);
	
}
实现类
<?php declare(strict_types=1);


namespace app\Http\Controller\Admin;

use app\Http\Controller\BaseController;
use Swoft\Http\Message\Request;
use Swoft\Http\Server\Annotation\Mapping\Controller;
use Swoft\Http\Server\Annotation\Mapping\RequestMethod;
use Swoft\Validator\Annotation\Mapping\Validate;
use app\Validator\TestValidator;
use Swoft\Context\Context;

/**
 * Class TestController
 * @package app\Http\Controller\Admin
 * @Controller(prefix="/admin/test")
 */
class TestController implements BaseController
{
	/**
	 * @RequestMapping(route="index",method={RequestMethod::GET})
	 * @Validate(validator="TestValidator",fields={"name"})
	 * @param Request $request
	 */
	public function index(Request $request){
		$response = Context::mustGet()->Response();
		$data     = ['name'=>'Swoft2.0'];
		return $response->withData($data);
	}
	
	public function show(Request $request){

	}
	
	public function edit(Request $request){

	}
	
	public function update(Request $request){

	}
	
	public function create(){

	}
	
	public function store(Request $request){

	}
	
	public function destroy(Request $request){

	}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SWOT分析是一种常用的战略分析工具,可以帮助企业在制定战略和决策时识别和评估内部和外部环境中的优势、劣势、机会和威胁。下面是智能水阀控制系统热水器的SWOT分析: 优势(Strengths): 1. 节能环保:智能水阀控制系统可以根据用户的使用需求自动调节水温和流量,从而减少能源的浪费和环境的污染。 2. 方便易用:用户可以通过手机APP或其他智能设备轻松控制水阀,实现远程控制和智能化管理。 3. 安全可靠:智能水阀控制系统可以监测水温和水压,及时发现故障并采取措施,有效避免热水器爆炸等安全事故。 劣势(Weaknesses): 1. 成本较高:智能水阀控制系统需要使用高端的传感器、控制器等硬件设备,价格较高。 2. 技术门槛高:智能水阀控制系统的开发和维护需要专业的技术人才,对企业的技术水平要求较高。 机会(Opportunities): 1. 政策支持:国家对节能环保等领域给予了政策支持,智能水阀控制系统有望得到政府的扶持和补贴。 2. 市场需求:随着人们环保意识的提高和智能家居市场的快速发展,智能水阀控制系统的市场需求呈上升趋势。 威胁(Threats): 1. 竞争压力:由于智能水阀控制系统市场前景广阔,吸引了众多企业的关注和投入,市场竞争激烈。 2. 技术风险:智能水阀控制系统的研发和应用涉及到多个领域的技术,存在技术风险和不确定性。 综上所述,智能水阀控制系统热水器的SWOT分析显示其具有良好的市场前景和发展潜力,但需要面对市场竞争和技术风险等挑战。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值