标签:
小李子:用于演示作用的数据库表:customers
官方解读: “ 读取数据集其实就是获取数据表中的多行记录(以及关联数据),使用select方法 ”
1 $customers=D(‘customers‘);2 $customers_msg_all=$customers->select();3 print_r($customers_msg_all);die;
最简单无脑的select查出来的数据如下:
1 Array2 (3 [0] => Array4 (5 [id] => 216 [brand_id] => 157 [name] => anme8 [iccid] => 1882***9 [mobile] => 18826**10 [addtime] =>11 [pretime] =>12 [taocan] =>13 [huafei] =>14 [liuliang] =>15 [beizhu] =>16 [huzhaoid] => 366017 [rutaiid] => 366018 [tongxingid] => 366019 [status] => 020 [des] =>21 [tongxingimg] => 2016-08-15/57b19aaeb008c.png22 [rutaiimg] => 2016-08-15/57b19aaeaf58e.png23 )24
25 [1] => Array26 (27 [id] => 2228 [brand_id] => 1629 [name] =>ads30 [iccid] => 132**2131 [mobile] => 138***132 [addtime] =>33 [pretime] =>34 [taocan] =>35 [huafei] =>36 [liuliang] =>37 [beizhu] =>38 [huzhaoid] => 12345639 [rutaiid] => 12345640 [tongxingid] => 12345641 [status] => 042 [des] =>43 [tongxingimg] => 2016-08-15/57b19acc5b4a5.png44 [rutaiimg] => 2016-08-15/57b19acc5a9e6.png45 )46
47 [2] => Array48 (49 [id] => 2550 [brand_id] => 1751 [name] => kils52 [iccid] => 1890**53 [mobile] => 189***54 [addtime] =>55 [pretime] =>56 [taocan] =>57 [huafei] =>58 [liuliang] =>59 [beizhu] =>60 [huzhaoid] => 12312361 [rutaiid] => 321312362 [tongxingid] => 32131263 [status] => 064 [des] =>65 [tongxingimg] => 2016-08-15/57b19bef2b9db.png66 [rutaiimg] => 2016-08-15/57b19bef2ae22.png67 )68
69 )
官方解读:“ 读取数据是指读取数据表中的一行数据(或者关联数据),主要通过find方法完成 ”:
现在看看find查出来的数据:
1 $customers=D(‘customers‘);2 $customers_msg_all=$customers->find();3 print_r($customers_msg_all);die;
1 Array2 (3 [id] => 214 [brand_id] => 155 [name] => jiangjun6 [iccid] => 1882**07 [mobile] => 1882***08 [addtime] =>9 [pretime] =>10 [taocan] =>11 [huafei] =>12 [liuliang] =>13 [beizhu] =>14 [huzhaoid] => 366015 [rutaiid] => 366016 [tongxingid] => 366017 [status] => 018 [des] =>19 [tongxingimg] => 2016-08-15/57b19aaeb008c.png20 [rutaiimg] => 2016-08-15/57b19aaeaf58e.png21 )
看到没,find只查出了数据表之中一组数据,即使你不给where条件;
现在来看用的最多,用法最多变的getField方法;
官方解读:“ 读取字段值其实就是获取数据表中的某个列的多个或者单个数据,最常用的方法是 getField方法 ” 注意,getField里面必须传递需要查询的数据表字段名称,否则就是,查询出来的数据是空的,而不是全部数据
1 $customers=D(‘customers‘);2 $customers_msg_all=$customers->where(‘id=21‘)->getField(‘mobile‘);3 print_r($customers_msg_all);die;
1 18826*****
输出一个varchar数据,并非数组,可以直接用;
用getField输出数据表某一字段某一列的值:
$customers=D(‘customers‘);
$customers_msg_all=$customers->getField(‘mobile‘);
print_r($customers_msg_all);die;
当你这样写的时候,仍然是仅仅输出一个电话号码,也就是数据库字段mobile的某一个数值(最后一个);
1 $customers=D(‘customers‘);2 $customers_msg_all=$customers->getField(‘mobile‘,true);3 print_r($customers_msg_all);die;
输出结果:
1 Array2 (3 [0] => 1323**214 [1] => 188**605 [2] => 1890***1986 )
所以,雄哥说的加true是为了返回一维数组,之意是为了获取某一列的全部数值;
1 $customers=D(‘customers‘);2 $customers_msg_all=$customers->getField(‘mobile‘,2);3 print_r($customers_msg_all);die;
将true改为2,意思是取出该列的数值,限制取出2条数据:
1 Array2 (3 [0] => 1323**84 [1] => 1882***605 )
getField里面传入多个字段名称呢???
1 $customers=D(‘customers‘);2 $customers_msg_all=$customers->getField(‘mobile,name‘);
3 print_r($customers_msg_all);die;
输出:
1 Array2 (3 [18826**60] => name14 [1323***9621] => name25 [189***9198] => name36 )
其他传入3个或者以上数据库字段的,功能与select有所重叠,有比较少使用,不做演示;
总的来说啊;查询整个表的数据用select;
查询表的某一行数据用find;
查询表的某一列数据或者某一个数据用getField;
标签: