Thinkphp 6.0模型的数据类型和转换

本节课我们来学习模型中数据类型和转换的方法。

一.模型类型转换

1. 系统可以通过模型端设置写入或读取时对字段类型进行转换;

2. 我们这里,通过读取的方式来演示部分效果;

3. 在模型端设置你想要类型转换的字段属性,属性值为数组;

protected $type = [
    'price'     =>     'integer',
    'status'     =>     'boolean',
    'create_time'     =>     'datetime:Y-m-d'
];

4. 数据库查询读取的字段很多都是字符串类型,我们可以转换成如下类型:

integer(整型)、float(浮点型)、boolean(布尔型)、array(数组)

object(对象)、serialize(序列化)、json(json)、timestamp(时间戳)

datetime(日期)

5. 由于数据库没有那么多类型演示,常用度不显著,我们提供几个方便演示的;

public function typeC()
{
    $user = UserModel::find(19);
    var_dump($user->price);
    var_dump($user->status);
    var_dump($user->create_time);
}

6. 类型转换还是会调用属性里的获取器等操作,编码时要注意这方面的问题;

7. 废弃字段,当某个字段在开发项目版本升级中不再使用,可以设置为废弃字段;

8. 设置废弃字段后,这个字段就不在查询数据列表里了,写入忽略(存疑);

//设置废弃字段
protected $disuse = ['status', 'uid'];

你可能感兴趣的:(php,php)