public function test()
{
$user=User::get(1);
var_dump($user); //输出结果如下
var_dump($user->getData('user_name')); //输出:张三
var_dump($user['user_name']); //同样输出:张三
}如下是var_dump($user); 的结果:object(app\model\User)[13] //可以看到get方法返回的是对象
......省略了无关的内容.....
protected 'data' => //原始数据是在data属性里的
array (size=3)
'user_id' => int 1
'user_name' => string '张三'
'user_password' => string 'e10adc3949ba59abbe56e057f20f883e'
....以下省略.......通过运行上述的代码,代码最后的两个var_dump输出的结果是一样的。然而get返回的明明是一个对象啊,原始数据也是在data属性里的,按理说是要用getData()方法才能取出数据,但是怎么会出现用数组方法直接就可以取到特定字段的数据呢?本人初学TP5,PHP也只是懂些皮毛,望大神们指点,谢谢!
最佳答案