重慶分公司,新征程啟航
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
原文博客地址www.xiegaosheng.com/post/view?id=96;
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:主機(jī)域名、虛擬主機(jī)、營銷軟件、網(wǎng)站建設(shè)、海晏網(wǎng)站維護(hù)、網(wǎng)站推廣。
mongodb = new MongoDB\Driver\Manager("mongodb://localhost:27017"); $this->dbname = $config['dbname']; $this->collection = $config['collection']; $this->bulk = new MongoDB\Driver\BulkWrite(); $this->writeConcern = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 100); } /** * Created by PhpStorm. * function: query * Description:查詢方法 * User: Xiaoxie * Email 736214763@qq.com * @param array $where * @param array $option * @return string * */ public function query($where=[],$option=[]) { $query = new MongoDB\Driver\Query($where,$option); $result = $this->mongodb->executeQuery("$this->dbname.$this->collection", $query); $data = []; if ($result) { # code... foreach ($result as $key => $value) { # code... array_push($data, $value); } } return json_encode($data); } /** * Created by PhpStorm. * function: getCount * Description:獲取統(tǒng)計(jì)數(shù) * User: Xiaoxie * Email 736214763@qq.com * @param array $where * @return int * */ public function getCount($where=[]) { $command = new MongoDB\Driver\Command(['count' => $this->collection,'query'=>$where]); $result = $this->mongodb->executeCommand($this->dbname,$command); $res = $result->toArray(); $cnt = 0; if ($res) { # code... $cnt = $res[0]->n; } return $cnt; } /** * Created by PhpStorm. * function: page * Description:分頁數(shù)據(jù) * User: Xiaoxie * Email 736214763@qq.com * @param array $where * @param int $page * @param int $limit * @return string * */ public function page($where=[],$page=1,$limit=10) { $count = $this->getCount($where); $data['count'] = $count; $endpage = ceil($count/$limit); if ($page>$endpage) { # code... $page = $endpage; }elseif ($page <1) { $page = 1; } $skip = ($page-1)*$limit; $options = [ 'skip'=>$skip, 'limit' => $limit ]; $data['data'] = $this->query($where,$options); $data['page'] = $endpage; return json_encode($data); } /** * Created by PhpStorm. * function: update * Description:更新操作 * User: Xiaoxie * Email 736214763@qq.com * @param array $where * @param array $update * @param bool $upsert * @return int|null * */ public function update($where=[],$update=[],$upsert=false) { $this->bulk->update($where,['$set' => $update], ['multi' => true, 'upsert' => $upsert]); $result = $this->mongodb->executeBulkWrite("$this->dbname.$this->collection", $this->bulk, $this->writeConcern); return $result->getModifiedCount(); } /** * Created by PhpStorm. * function: insert * Description:插入 * User: Xiaoxie * Email 736214763@qq.com * @param array $data * @return mixed * */ public function insert($data=[]) { $result = $this->bulk->insert($data); return $result->getInsertedCount(); } /** * Created by PhpStorm. * function: delete * Description:刪除 * User: Xiaoxie * Email 736214763@qq.com * @param array $where * @param int $limit * @return mixed * */ public function delete($where=[],$limit=1) { $result = $this->bulk->delete($where,['limit'=>$limit]); return $result->getDeletedCount(); } } //實(shí)例化調(diào)用 $action = $_GET['action']?:exit('參數(shù)錯(cuò)誤'); $page = $_GET['page']?:1; $where = json_decode($_GET['where'],true)?:[]; $limit = $_GET['limit']?:'10'; $data = json_decode($_GET['data'],true)?:[]; $option = json_decode($_GET['option'],true)?:[]; $collection = $_GET['collection']; $mongodb = new MongodbClient(['dbname'=>$dbname,'collection'=>$collection]); if ($action=='getCount') { # code... $data = $mongodb->getCount($where); }elseif($action=='insert') { $data = $mongodb->insert($data); } elseif($action=='update') { $data = $mongodb->update($where,$data); } elseif($action=='delete') { $data = $mongodb->delete($where); } elseif($action=='query') { $data = $mongodb->query($where,$option); }elseif($action=='page') { $data = $mongodb->page($where,$page,$limit); } echo $data; 外部調(diào)用的時(shí)候只需 127.0.0.1/index.php?action=方法&where=等等參數(shù)就會返回json