thinkphp 创建数据对象之data方法

时间:2023-03-08 21:56:02

创建数据对象:data()方法

1.功能:给模型对象$data赋值,将模型对象转化为数据对象

tip:模型对象与数据对象之间就差一个赋过值的$data;

2.方法:data()其源码如下:

tip:源码均指:thinkphp框架中的Model.php类文件中的内容

文件位置:/thinkphp/library/think/Model.php

   //设置数据对象值
//access public
//param mixed $data 数据或者属性名
//param mixed $value 值
//return $this
public function data($data, $value = null){ //value 可以不传,不传时取默认值
if (is_string($data)) {//如果data是字符串,则视为$data数组的键名$this->data[$data]=$value;
$this->data[$data] = $value;//赋值
} else {//如果不是字符串
$this->data = [];//清空数据
if (is_object($data)) {//如果是对象
$data = get_object_vars($data);//把对象转关联数组 然后赋值
}if (true === $value) {//第二个值是布尔值true
foreach ($data as $key => $value) {
$this->setAttr($key, $value, $data);//用自定义的获取器
}
} else {
$this->data = $data;//赋值
}
}return $this;//返回数据对象

  

相关文章