Rumah >pembangunan bahagian belakang >tutorial php >ThinkPHP(百万级)数据分表技术的例子

ThinkPHP(百万级)数据分表技术的例子

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBasal
2016-07-25 08:59:461739semak imbas
为大家说说ThinkPHP内置的分表算法处理百万级数据的例子,有需要的朋友,可以看看。

从thinkphp中抽取出来的代码,看看人家是如何实现大数据分表的。

数据表: house_member_0 house_member_1 house_member_2 house_member_3

model:

class MemberModel extends AdvModel {
protected $partition = array('field'=>'username','type'=>'id','num'=>'4');
    public function getDao($data=array()) {
        $data = empty($data) ? $_POST : $data;
        $table = $this->getPartitionTableName($data);
        return $this->table($table);
    }
}

action:

class MemberAction extends BaseAction {
    public function login() {
        if($this->isPost()) {
            $this->validToken();
            $dao = D('Member')->getDao();
            $res = $dao->where('username = '.$_POST['username'])->find();
            // output 为自定义方法
            // $isAjax - bool
            $this->output(false);
        }
        $this->display();
    }
}


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn