1.首先要了解获取器的用处
获取器的作用是在获取数据的字段值后自动进行处理。
2.应用场景
在数据库存性别的时候不能存男女,而可以存0(未知)1(男)2(女),这样快,获取器就是我在控制器中通过$user->toArray()从模型获取数据的时候,自动调用模型中的getSexAttr()方法,从而返回的结果里面直接是男女,而不是012。
3.使用的注意事项
获取器的命名 get表字段名Attr 比如:getSexAttr
4.实例
protected function getSexAttr($value) {
$text = [1 => '男', 2 => '女', 3 => '未知'];
return $text[$value];
}
5.进一步改进
上面的实例一旦定义好了,就意味着只要你一操作,无论你是否想要转换,他都会帮你转换,这明显是不合理的。所以我们要根据情况来定义,让他为可控的。
场景2:
protected function getSexAttr($value) {
$text = [1 => '男', 2 => '女', 3 => '未知'];
return ['val' => $value, 'text' => $text[$value]];
}
前台就可以直接使用了{$v.sex.val} 是1,2,3值的格式。{$v.sex.text}就是男,女,未知的格式
。