// +---------------------------------------------------------------------- namespace Admin\Model; use Think\Model; /** * 文档基础模型 */ class SubsiteModel extends Model{ //批量添加 protected $dbcount=0; protected $syncKey="id"; protected $syncData; protected $syncWhere=false; public function __construct($name = '', $tablePrefix = '', $connection = '') { parent::__construct($name, $tablePrefix, $connection); if(in_array($this->trueTableName,C('SUBSITE_TABLE'))){ $SUBSITE_DB = C("SUBSITE_DB_CONFIG"); $i = 1; foreach ($SUBSITE_DB as $k => $v) { $this->db($i,$v); $i++; } $this->dbcount = $i; } } //修改主键,默认id public function syncKey($key){ $this->syncKey = $key; return $this; } //持续化数据条件 protected function syncCreate($data) { $this->syncData = $data; if(isset($this->options['where'])){ $this->syncWhere = $this->options['where']; } } //同步添加 public function syncAdd($data) { $this->syncCreate($data); $syncVal = $this->db(0)->add(); if(empty($syncVal)){ return $syncVal; } $this->syncData[$this->syncKey] = $syncVal; for ($i=1; $i < $this->dbcount; $i++) { $this->db($i)->add($this->syncData); } return $syncVal; } //同步修改 public function syncSave($data) { $this->syncCreate($data); for ($i=0; $i < $this->dbcount; $i++) { $this->db($i)->where($this->syncWhere)->save($this->syncData); } return true; } }