rock = $GLOBALS['rock']; $this->db = $GLOBALS['db']; $this->adminid = $this->rock->adminid; $this->adminname = $this->rock->adminname; $this->settable($table); $this->initModel(); } public function settable($table, $qzbo=true) { $this->table = ''.$this->perfix.''.$table.''; if(!$qzbo)$this->table = $table; } public function initModel(){} public function getmou($fields, $where, $order='') { return $this->db->getmou($this->table, $fields, $where, $order); } public function getone($where, $fields='*', $order='') { return $this->db->getone($this->table, $where, $fields, $order); } public function getrows($where, $fields='*', $order='', $limit='') { return $this->db->getrows($this->table, $where, $fields, $order, $limit); } public function getall($where, $fields='*', $order='', $limit='') { $sql = $this->db->getsql(array( 'fields' => $fields, 'table' => $this->table, 'where' => $where, 'order' => $order, 'limit' => $limit )); return $this->db->getall($sql); } public function getarr($where, $fields='*', $kfied='id') { return $this->db->getarr($this->table, $where, $fields, $kfied); } public function rows($where) { return $this->db->rows($this->table, $where); } public function query($where, $fields='*', $order='', $limit='') { $sql = $this->db->getsql(array( 'fields' => $fields, 'table' => $this->table, 'where' => $where, 'order' => $order, 'limit' => $limit )); return $this->db->query($sql); } public function record($arr, $where='') { return $this->db->record($this->table, $arr, $where); } public function update($arr,$where) { return $this->record($arr, $where); } public function insert($arr) { $nid = 0; if($this->record($arr, ''))$nid = $this->db->insert_id(); return $nid; } public function insertAll($arr) { $name = $values = ''; foreach($arr as $k=>$rs){ $cont = ''; foreach($rs as $i=>$v){ if($k==0)$name.=',`'.$i.'`'; $cont.=",".$this->db->toaddval($v).""; } $cont = substr($cont, 1); if($k>0)$values.=','; $values.='('.$cont.')'; } return $this->db->insert($this->table, substr($name, 1),'values '.$values.'', true); } /* * $colArr 字段名 * $valArr 插入的值 * $checkColArr 检查用的字段 * */ public function insertOrUpdate($valArr, $checkColArr){ if ($valArr == null) { return '错误:数据有误!'; } $sqlStrFirst = "INSERT INTO `$this->table` ("; $sqlStr = ""; for ($i = 0; $i < count($valArr); $i++) { $valArrChild = $valArr[$i]; $j = 0; $sqlStr .= "("; foreach ($valArrChild as $key=>$val) { if ($i == 0) { $sqlStrFirst .= "`$key`"; $sqlStrFirst .= $j != count($valArrChild)-1 ? ',' : ') VALUES '; } $val = $valArrChild[$key]; $sqlStr .= "'".$val."'"; $sqlStr .= $j++ == count($valArrChild)-1 ? ' ' : ','; } $sqlStr .= ")"; $sqlStr .= $i+1 == count($valArr) ? ' ' : ','; } $sqlStrFirst .= $sqlStr; $sqlStrFirst .= "ON DUPLICATE KEY UPDATE "; $sqlLast = ""; for ($k = 0; $k < count($checkColArr); $k++) { $sqlLast.="`$checkColArr[$k]` = values(`$checkColArr[$k]`)"; $sqlLast .= $k+1 == count($checkColArr) ? ';' : ','; } $sqlStr = $sqlStrFirst.$sqlLast; return $this->db->query($sqlStr); } public function getwhere($where='') { return $this->db->getwhere($where); } public function getfields() { return $this->db->getallfields($this->table); } public function delete($where) { return $this->db->delete($this->table, $where); } public function getlimit($where, $page=1, $fields='*', $order='', $limit=20, $table='') { if($order != '')$order = 'order by '.$order.''; $where = $this->getwhere($where); if($table == '')$table = $this->table; $sql = "select $fields from $table where $where $order "; $count = $this->db->rows($table, $where); if($page <= 0)$page=1; $sql .= "limit ".($page-1)*$limit.",$limit"; $rows = $this->db->getall($sql); $maxpage = ceil($count/$limit); return array( 'rows' => $rows, 'count' => $count, 'maxpage' => $maxpage, 'page' => $page, 'limit' => $limit, 'prevpage' => $page-1, 'nextpage' => $page+1, 'url' => '' ); } public function isempt($str) { return $this->rock->isempt($str); } public function contain($str, $s1) { return $this->rock->contain($str, $s1); } public function getLastSql() { return $this->db->getLastSql(); } public function count($where='1=1') { return $this->rows($where); } public function getXinxi($id,$fields='*') { if(isset($this->tempxinxi[$id]))return $this->tempxinxi[$id]; $rs = $this->getone($id,$fields); $this->tempxinxi[$id] = $rs; return $rs; } // Post请求 public function sendPostRequest($url, $data, $token='') { // 初始化 cURL $ch = curl_init(); $url = preg_replace('#(? -1, "msg"=> "cURL Error: " . $error_msg, "data"=> null ]; return $resp; } // 关闭 cURL 资源 curl_close($ch); return json_decode($response, true); } } class sModel extends Model{}