1.分页代码::
function getSplitPageInfo($page,$page_size){
//参数为零则采用默认值
$page=empty($page)||!is_numeric($page)||$page<1 ?1 :$page;
$page_size=empty($page_size)||!is_numeric($page_size)?20:$page_size;
$page_start=$page_size*($page-1);
return ['page_start'=>$page_start,'page_size'=>$page_size];
}
php中分页引用例子::
if ($data['pre']) {
$page = getSplitPageInfo($data['page'], $data['pre']);
$list = $goods_brand
->field("brand_id,brand_name")
->where($where)
->order('brand_id desc')
->limit($page['page_start'], $page['page_size'])
->select();
return ['status' => true, 'list' => $list];
}
2..tp5 join连接与tp3.2的差异性,tp3.2中采用on进行连接,而tp5用逗号“,”进行隔开::
//查询
$page = getSplitPageInfo($data['page'], $data['pre']);
$list = Db::name('goods_declare_list')
->alias('g')
->join(Config::get('database.prefix').'goods_declare_detail gd','g.gdl_id = gd.gdl_id')
->join(Config::get('database.prefix').'organization o' ,' gd.CIQOrg_id = o.org_id')
->field('g.gdl_id,g.GoodsName,g.ShelfGName,g.BarCode,g.SKU,
g.Brand,g.push_time,o.org_id,o.org_name,gd.CIQGoodsNo')
->where($where)
->limit($page['page_start'], $page['page_size'])
->order('g.push_time desc')
->distinct(true)
->select();
附上::模型 5.0 的模型变化是最大的,基本上模型是完全面向对象的概念,包括关联模型,模型类的后缀不再带 Model ,直接由命名空间区分,原来的 D 函数调用改为 model 函数,并且必须创建对应的模型类,例 如
3.2版本 D('User')->where(['name'=>'thinkphp'])->find();
5.0版本 model('User')->where('name','thinkphp')->find();
$admin_mod=model('对应的模型名');
数据库 5.0的数据库查询功能增强,原先需要通过模型才能使用的链式查询可以直接通过 Db 类调用,原来的 M 函数 调用可以改用 db 函数,例如::
3.2版本 M('User')->where(['name'=>'thinkphp'])->find();
5.0版本 db('User')->where('name','thinkphp')->find();
$User=db('User')