发布网友 发布时间:2022-04-29 07:43
共3个回答
懂视网 时间:2022-04-29 12:04
模型文件:/application/index/model/Staff.php
<?php namespace appindexmodel;//导入模型类 use thinkmodel;class Staff extends model { //自定义模型类代码}
控制器文件: Index.php
<?php namespace appindexcontroller;//导入模型类 use appindexmodelStaff;class Index { public function index(){ //1.创建模型对象$model //此时的模型对象仅仅完成了与特定数据表的绑定 //理论上讲,仍是一个没有任何数据的空模型 $model = new Staff(); //2.创建数据源,供创建数据对象使用 $data = []; $data['id'] = 1001; $data['name'] = 'Peter'; $data['age'] = 26; //3.data()方法完成前面模型对象的$data属性赋值 //使模型对象转换成数据对象,现在$model 已经是数据对象啦 $model -> data($data); //4.getData()方法获取数据对象原始数据$data $result = $model -> getData(); //5.查看数据对象原始数据:$data属性(数组类型) dump($result); }}
现在打开浏览器运行Index控制器的index方法:
//以下就是数据对象的原始数据//其实就是将数据对象中$data属性值输出array(3) { ["id"] => int(1001) ["name"] => string(5) "Peter" ["age"] => int(26)}
现在是输出了全部的原始数据,如果我们只需要其中一个元素,怎么做呢?
getData方法参数传入键名字符串,可获取指定的单个原始数据元素
我们仅修改上面控制器代码第四步操作即可:
//4.getData()方法获取数据对象原始数据$data['name']的值$result = $model -> getData('name');
这样即可获取原始数据$data中的name键名对应的值:
string(5) "Peter"
4. 总结:
这个方法很灵活,即可获取完整的原始数据,也可以获取其中的一个数据。在开发也是最常用的方法,特别是在模板制作中用得很多,一定要熟练掌握。
(推荐教程:thinkphp教程)
热心网友 时间:2022-04-29 09:12
ThinkPHP内置的ORM和ActiveRecord模式实现了方便的数据存取操作,而且新版增加的连贯操作功能更是让这个数据操作更加清晰,但是ThinkPHP仍然保留了原生的SQL查询和执行操作支持,为了满足复杂查询的需要和一些特殊的数据操作,SQL查询的返回值因为是直接返回的Db类的查询结果,没有做任何的处理。而且可以支持查询缓存。主要包括下面两个方法:热心网友 时间:2022-04-29 10:30
插入与更新数据的时候,把数据同时赋值给两个字段就可以了