TP5 Model层 模型操作——指定数据库/表 && 自动写入时间
Notice :
1. 不要用3.2的思维来考虑5.0
2. 模型命名使用驼峰法,并且在获取实际数据的时候自动小写+下划线命名的数据表名称,对应的规范是:设置的数据库前缀+模型名
3. 如果数据表的命名不符合上面的规范,应当在模型中单独定义数据表。
若当前数据表无前缀(在配置文件中已经设置了表前缀)
namespace appindexmodel;
use thinkModel;
class User extends Model
{
// 设置完整的数据表(全称包含前缀)
protected $table = "think_user";
}
若模型层命名与数据表不对应
namespace appindexmodel;
use thinkModel;
class User extends Model
{
// 设置数据表(不含前缀)
protected $name = "member";
}
若想指定数据库链接
namespace appindexmodel;
use thinkModel;
class User extends Model
{
// 设置单独的数据库连接
protected $connection = [
// 数据库类型
"type" => "mysql",
// 服务器地址
"hostname" => "127.0.0.1",
// 数据库名
"database" => "test",
// 数据库用户名
"username" => "root",
// 数据库密码
"password" => "",
// 数据库连接端口
"hostport" => "",
// 数据库连接参数
"params" => [],
// 数据库编码默认采用utf8
"charset" => "utf8",
// 数据库表前缀
"prefix" => "think_",
// 数据库调试模式
"debug" => true,
];
}
设置时间自动写入
Notice :
以下全局变量:均为为框架自带变量。
$autoWriteTimestamp
自动写入时间开关。可以设置为true/false
表示开启或关闭,并默认识别为int
型。当其值设置为指定格式的时候将自动开启。也可以在数据库配置文件中"auto_timestamp" => false,
修改。
字段名默认创建时间字段为create_time
,更新时间字段为update_time
,支持的字段类型包括timestamp/datetime/int
。写入数据的时候,系统会自动写入create_time
和update_time
字段,而不需要定义修改器。如果你的数据表字段不是默认值的话,可以使用protected $create_time = "xxx"/protected $update_time = "xxx"
自行指定。
<?php
namespace appindexmodel;
use thinkModel;
class User extends Model
{
//设置自动写入的格式
protected $autoWriteTimestamp = "datetime";
//关闭修改字段默认写入
protected $updateTime = false;
}
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: C#实现Base64的编码与解码
- 下一篇: ThinkPHP5.0的软删除功能