亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數(shù)據(jù)庫 > MongoDB > 正文

PHP操作MongoDB實(shí)現(xiàn)增刪改查功能php技巧

2020-03-22 17:50:00
字體:
供稿:網(wǎng)友
這篇文章主要介紹了PHP操作MongoDB實(shí)現(xiàn)增刪改查功能,結(jié)合實(shí)例形式總結(jié)分析了php操作MongoDB的常用技巧,并附帶php7操作MongoDB方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了PHP操作MongoDB實(shí)現(xiàn)增刪改查功能。分享給大家供大家參考,具體如下:

MongoDB的PHP驅(qū)動(dòng)提供了一些核心類來操作MongoDB,總的來說MongoDB命令行中有的功能,它都可以實(shí)現(xiàn),而且參數(shù)的格式基本相似。PHP7以前的版本和PHP7之后的版本對MongoDB的操作有所不同,本文主要以PHP7以前版本為例講解PHP對MongoDB的各種操作,最后再簡單說明一下PHP7以后版本對MongoDB的操作。

一、數(shù)據(jù)插入

//insert()//參數(shù)1:一個(gè)數(shù)組或?qū)ο?/參數(shù)2:擴(kuò)展選項(xiàng)// fsync:默認(rèn)為false,若為true則mongo在確認(rèn)數(shù)據(jù)插入成功之前將會(huì)強(qiáng)制把數(shù)據(jù)寫入硬盤// j:默認(rèn)為false,若為true則mongo在確認(rèn)數(shù)據(jù)插入成功之前將會(huì)強(qiáng)制把數(shù)據(jù)寫入日志// w:默認(rèn)為1,寫操作會(huì)被(主)服務(wù)器確認(rèn),若為0則將不會(huì)得到確認(rèn),使用復(fù)制集時(shí)設(shè)置為n用于確保主服務(wù)器將數(shù)據(jù)修改成功復(fù)制到n個(gè)節(jié)點(diǎn)后再確認(rèn)// wtimeout:默認(rèn)為10000(毫秒),用于指定服務(wù)器等待接收確認(rèn)的時(shí)間// timeout:指定客戶端需要等待服務(wù)器響應(yīng)的超時(shí)時(shí)間(毫秒)$mongo = new MongoClient( mongodb://localhost:27017 $db = $mongo- //選擇數(shù)據(jù)庫$collection = $db- friend;//選擇文檔集合$doc = [//定義一個(gè)文檔,即一個(gè)數(shù)組 First Name = Jet , Last Name = Wu , Age = 26, Phone = 110 , Address = [ Country = China , City = Shen Zhen  E-Mail = [ 123456@qq.com , 666666@sina.com , 8888888@qq.com , 77887788@qq.com $res = $collection- insert($doc);//向集合中插入一個(gè)文檔echo pre print_r($res);//$res[ ok ]=1表示插入成功

二、數(shù)據(jù)查詢

1. 查詢單個(gè)文檔:

//findOne()//參數(shù)1:搜索條件//參數(shù)2:指定返回字段,array( fieldname = true, fieldname2 = true)。_id字段總會(huì)返回,除非在第二個(gè)參數(shù)顯式加入 _id = false。不設(shè)置則返回所有字段$mongo = new MongoClient( mongodb://localhost:27017 $db = $mongo- $collection = $db- friend;$one = $collection- findOne([ First Name = Jet echo pre print_r($one);//返回一個(gè)數(shù)組,查不到數(shù)據(jù)則返回NULL

2. 查詢多個(gè)文檔:

//find()//參數(shù)1:搜索條件//參數(shù)2:指定返回字段,array( fieldname = true, fieldname2 = true)。_id字段總會(huì)返回,除非顯式設(shè)置為false不返回。不設(shè)置則返回所有字段$mongo = new MongoClient( mongodb://localhost:27017 $db = $mongo- $collection = $db- friend;$cursor = $collection- find([ Address.Country = China //使用點(diǎn)操作符查找數(shù)組元素echo pre while($doc = $cursor- getNext()) {//循環(huán)讀取每個(gè)匹配的文檔 print_r($doc);}

使用各種條件操作符定義查詢:

//mongodb分別使用$lt、$lte、$eq、$gte、$gt、$ne表示 、 =、=、 =、 、 ,用于整數(shù)字段查詢$mongo = new MongoClient( mongodb://localhost:27017 $db = $mongo- $collection = $db- friend;$cursor = $collection- find([ Age = [ $gt = 30]]);echo pre while($doc = $cursor- getNext()) { print_r($doc);//查詢某個(gè)字段的所有不重復(fù)的值$res = $collection- distinct( Age //$in:匹配多個(gè)值中任意一個(gè)$cursor = $collection- find([ Address.Country = [ $in = [ China , USA ]]]);//$all:匹配多個(gè)值中所有值(用于數(shù)組字段查詢)$cursor = $collection- find([ E-Mail = [ $all = [ 123456@qq.com , 77887788@qq.com ]]]);//$or:或查詢$cursor = $collection- find([ $or = [[ First Name = Jet ], [ Address.Country = USA ]]]);//$slice:獲取數(shù)組字段中指定數(shù)目的元素,位于find()函數(shù)第二個(gè)參數(shù)中$cursor = $collection- find([ First Name = Jet ], [ E-Mail = [ $slice = 2]]);//只返回前兩個(gè)email$cursor = $collection- find([ First Name = Jet ], [ E-Mail = [ $slice = -2]]);//只返回最后兩個(gè)email$cursor = $collection- find([ First Name = Jet ], [ E-Mail = [ $slice = [1, 2]]]);//忽略第一個(gè),返回接下來兩個(gè)//$exists:根據(jù)某個(gè)字段是否有設(shè)置值進(jìn)行查詢$cursor = $collection- find([ Hobby = [ $exists = false]]);//查找Hobby字段未設(shè)置值的文檔//html' target='_blank'>正則表達(dá)式查詢$cursor = $collection- find([ First Name = new MongoRegex( /^Je/i )]);//查找First Name字段以Je開頭的文檔,忽略大小寫差異

使用MongoCursor類提供的其他函數(shù):

//排序:1升序,-1降序$cursor- sort([ Age = 1]);//忽略前n個(gè)匹配的文檔$cursor- skip(1);//只返回前n個(gè)匹配的文檔(limit()與skip()結(jié)合使用可實(shí)現(xiàn)數(shù)據(jù)分頁功能)$cursor- limit(1);//匹配文檔的總數(shù)$cursor- count();//指定查詢索引$cursor- hint([ Last Name = -1]);//若索引不存在則會(huì)報(bào)錯(cuò)

聚集查詢:對數(shù)據(jù)進(jìn)行分組統(tǒng)計(jì)

//聚合查詢:對數(shù)據(jù)進(jìn)行分組統(tǒng)計(jì)$mongo = new MongoClient( mongodb://localhost:27017 $db = $mongo- $collection = $db- friend;$res = $collection- aggregate([ $group = [ _id = $Address.Country ,//分組字段,注意要加上“$”,這里是根據(jù)數(shù)組字段某個(gè)元素值進(jìn)行分組 total = [ $sum = 1],//求總和,表示每匹配一個(gè)文檔總和就加1 maxAge = [ $max = $Age ],//分組中Age字段最大值 minAge = [ $min = $Age ]//分組中Age字段最小值echo pre print_r($res);//返回一個(gè)數(shù)組,$ret[ result ]為數(shù)組,存放統(tǒng)計(jì)結(jié)果//存在其它操作的聚合查詢:多個(gè)操作之間執(zhí)行先后順序取決于它們位置的先后順序//聚合查詢中的所有操作,包括 $group 在內(nèi),都是可選的。$mongo = new MongoClient( mongodb://localhost:27017 $db = $mongo- $collection = $db- friend;$res = $collection- aggregate([ [//過濾條件:只對符合條件的原始文檔進(jìn)行聚合運(yùn)算,若是放在 $group 之后則是只返回符合條件的結(jié)果文檔 $match = [ Age = [ $gt = 30]] [//指定分組字段、統(tǒng)計(jì)字段 $group = [ _id = $Address.Country , totalAge = [ $sum = $Age ]//計(jì)算各個(gè)分組Age字段總和 //以下操作若是放在 $group 之前則在聚合前作用于原始文檔,若放在 $group 之后則在聚合后作用于結(jié)果文檔 [ $unwind = $E-Mail ],//將包含有某個(gè)數(shù)組類型字段的文檔拆分成多個(gè)文檔,每個(gè)文檔的同名字段的值為數(shù)組中的一個(gè)值。 [ $project = [ myAge = $Age , First Name = $First Name ]],//指定返回字段,可以對字段進(jìn)行重命名,格式:返回字段名 = $原來字段名 [ $skip = 2],//跳過指定數(shù)量的文檔 [ $limit = 2],//只返回指定數(shù)量的文檔 [ $sort = [ totalAge = 1]]//排序echo pre print_r($res);

三、數(shù)據(jù)修改

//update()//參數(shù)1:更新條件,指定更新的目標(biāo)對象。//參數(shù)2:指定用于更新匹配記錄的對象。//參數(shù)3:擴(kuò)展選項(xiàng)組。// upsert:若設(shè)置為true,當(dāng)沒有匹配文檔的時(shí)候會(huì)創(chuàng)建一個(gè)新的文檔。// multiple:默認(rèn)為false,若設(shè)置為true,匹配文檔將全部被更新。// fsync:若設(shè)置為true,w參數(shù)將被覆蓋為0,數(shù)據(jù)將在更新結(jié)果返回前同步到磁盤。// w:默認(rèn)為1;若設(shè)置為0,更新操作將不會(huì)得到確認(rèn);使用復(fù)制集時(shí)可設(shè)置為n,確保主服務(wù)器在將修改復(fù)制到n個(gè)節(jié)點(diǎn)后才確認(rèn)該更新操作// j:默認(rèn)為false,若設(shè)置為true,數(shù)據(jù)將在更新結(jié)果返回之前寫入到日志中。// wtimeout:默認(rèn)為10000(毫秒),用于指定服務(wù)器等待接收確認(rèn)的時(shí)間// timeout:指定客戶端需要等待服務(wù)器響應(yīng)的超時(shí)時(shí)間(毫秒)//注意:若不使用任何修改操作符,則匹配文檔將直接被整個(gè)替換為參數(shù)2指定的對象。//$inc:增加特定鍵的值,若字段不存在則新建字段并賦值$mongo = new MongoClient( mongodb://localhost:27017 $db = $mongo- $collection = $db- friend;$res = $collection- update([ First Name = Jet ], [ $inc = [ Age = 2]]);echo pre print_r($res);//$res[ ok ]=1表示修改成功,$res[ nModified ]表示修改的文檔數(shù)量//$set:重置特定鍵的值,若字段不存在則新建字段并賦值$res = $collection- update([ First Name = Jet ], [ $set = [ Hobby = pingpong ]]);//$unset:刪除字段$res = $collection- update([ First Name = Jet ], [ $unset = [ Hobby = 1]]);//$rename:重命名字段,若字段不存在則不進(jìn)行任何操作$res = $collection- update([ First Name = Jet ], [ $rename = [ Hobby = hobby , Age = age ]]);//注意:如果文檔中已經(jīng)使用了指定名稱的字段,則該字段將會(huì)被刪除,然后再進(jìn)行重命名操作。//$setOnInsert:設(shè)置了upsert為true,并且發(fā)生了插入操作的時(shí)候,將某個(gè)字段設(shè)置為特定的$res = $collection- update([ First Name = jet ], [ $setOnInsert = [ lang = English ]], [ upsert = true]);//$push:向指定字段添加一個(gè)值(作用于數(shù)組字段),若字段不存在會(huì)先創(chuàng)建字段,若字段值不是數(shù)組會(huì)報(bào)錯(cuò)$res = $collection- update([ First Name = Jet ], [ $push = [ E-Mail = 123123@qq.com ]]);//$push:向指定字段添加多個(gè)值(作用于數(shù)組字段),若字段不存在會(huì)先創(chuàng)建字段,若字段值不是數(shù)組會(huì)報(bào)錯(cuò)$res = $collection- update([ First Name = Jet ], [ $pushAll = [ E-Mail = [ 666@qq.com , 8888888@qq.com ]]]);//使用$push和$each向某個(gè)字段添加多個(gè)值(作用于數(shù)組字段),若字段不存在會(huì)先創(chuàng)建字段,若字段值不是數(shù)組會(huì)報(bào)錯(cuò)$res = $collection- update([ First Name = Jet ], [ $push = [ E-Mail = [ $each = [ 123123@qq.com , 666@qq.com ]]]]);//$addToSet:將數(shù)據(jù)添加到數(shù)組中(只在目標(biāo)數(shù)組沒有該數(shù)據(jù)的時(shí)候才將數(shù)據(jù)添加到數(shù)組中)$res = $collection- update([ First Name = Jet ], [ $addToSet = [ E-Mail = 123123@qq.com ]]);$res = $collection- update([ First Name = Jet ], [ $addToSet = [ E-Mail = [ $each = [ 123123@qq.com , 666@qq.com ]]]]);//$pop:從數(shù)組中刪除一個(gè)元素,-1表示刪除第一個(gè)元素,1表示刪除最后一個(gè)元素(其實(shí)負(fù)數(shù)都刪除第一個(gè)元素,0或正數(shù)都刪除最后一個(gè)元素)$res = $collection- update([ First Name = Jet ], [ $pop = [ E-Mail = 1]]);//$pull:刪除數(shù)組中所有指定值$res = $collection- update([ First Name = Jet ], [ $pull = [ E-Mail = 123123@qq.com ]]);//$pullAll:刪除數(shù)組中多個(gè)元素的所有值$res = $collection- update([ First Name = Jet ], [ $pullAll = [ E-Mail = [ 123123@qq.com , 666@qq.com ]]]);//save()//參數(shù)1:希望保存的信息數(shù)組//參數(shù)2:擴(kuò)展選項(xiàng)// fsync:若設(shè)置為true,w參數(shù)將被覆蓋為0,數(shù)據(jù)將在更新結(jié)果返回前同步到磁盤。// w:默認(rèn)為1;若設(shè)置為0,更新操作將不會(huì)得到確認(rèn);使用復(fù)制集時(shí)可設(shè)置為n,確保主服務(wù)器在將修改復(fù)制到n個(gè)節(jié)點(diǎn)后才確認(rèn)該更新操作// j:默認(rèn)為false,若設(shè)置為true,數(shù)據(jù)將在更新結(jié)果返回之前寫入到日志中。// wtimeout:默認(rèn)為10000(毫秒),用于指定服務(wù)器等待接收確認(rèn)的時(shí)間// timeout:指定客戶端需要等待服務(wù)器響應(yīng)的超時(shí)時(shí)間(毫秒)//注意:若已存在則更新,若不存在則插入;更新時(shí)使用參數(shù)1指定的信息數(shù)組替換整個(gè)文檔。//若想更新則應(yīng)該在參數(shù)1中指定_id鍵的值。$mongo = new MongoClient( mongodb://localhost:27017 $db = $mongo- $collection = $db- friend;$doc = [//定義一個(gè)文檔,即一個(gè)數(shù)組 First Name = Jet , Last Name = Wu , Age = 26, Phone = 110 , Address = [ Country = China , City = Shen Zhen  E-Mail = [ 123456@qq.com , 666666@sina.com , 8888888@qq.com , 77887788@qq.com $res = $collection- save($doc);echo pre print_r($res);//$res[ ok ]=1表示操作成功,$res[ updatedExisting ]=1表示更新,$res[ upserted ]=1表示插入//findAndModify()//參數(shù)1:指定查詢條件//參數(shù)2:指定用于更新文檔的信息//參數(shù)3:可選,指定希望返回的字段//參數(shù)4:擴(kuò)展選項(xiàng)// sort:以特定順序?qū)ζヅ湮臋n進(jìn)行排序// remove:若設(shè)置為true,第一個(gè)匹配文檔將被刪除// update:若設(shè)置為true,將在被選擇的文檔上執(zhí)行更新操作// new:默認(rèn)為false,若設(shè)置為true則返回更新后的文檔,否則返回更新前的文檔// upsert:若設(shè)置為true,沒有找到匹配文檔的時(shí)候?qū)⒉迦胍粋€(gè)新的文檔$mongo = new MongoClient( mongodb://localhost:27017 $db = $mongo- $collection = $db- friend;$res = $collection- findAndModify([ First Name = Jet ], [ $push = [ E-Mail = 111@qq.com ]]);echo pre print_r($res);

四、數(shù)據(jù)刪除

//remove()//參數(shù)1:查詢條件//參數(shù)2:擴(kuò)展選項(xiàng)// justOne:若設(shè)置為true,則最多只有一個(gè)匹配的文檔將被刪除// fsync:若設(shè)置為true,w參數(shù)將被覆蓋為0,數(shù)據(jù)將在更新結(jié)果返回前同步到磁盤。// w:默認(rèn)為1;若設(shè)置為0,更新操作將不會(huì)得到確認(rèn);使用復(fù)制集時(shí)可設(shè)置為n,確保主服務(wù)器在將修改復(fù)制到n個(gè)節(jié)點(diǎn)后才確認(rèn)該更新操作// j:默認(rèn)為false,若設(shè)置為true,數(shù)據(jù)將在更新結(jié)果返回之前寫入到日志中。// wtimeout:默認(rèn)為10000(毫秒),用于指定服務(wù)器等待接收確認(rèn)的時(shí)間// timeout:指定客戶端需要等待服務(wù)器響應(yīng)的超時(shí)時(shí)間(毫秒)$mongo = new MongoClient( mongodb://localhost:27017 $db = $mongo- $collection = $db- friend;$res = $collection- remove([ First Name = jet echo pre print_r($res);//$res[ n ]表示刪除了幾個(gè)文檔

以上是PHP7以前版本的MongoDB操作,下面簡單介紹PHP7以后版本的操作。

PHP7操作方法

數(shù)據(jù)插入:

$manager = new MongoDB/Driver/Manager( mongodb://localhost:27017 $bulk = new MongoDB/Driver/BulkWrite;$bulk- insert([ name = JetWu5 , age = 26]);$bulk- insert([ name = JetWu6 , age = 26]);$writeConcern = new MongoDB/Driver/WriteConcern(MongoDB/Driver/WriteConcern::MAJORITY, 1000);//可選,修改確認(rèn)$res = $manager- executeBulkWrite( wjt.friend , $bulk, $writeConcern);echo pre print_r($res);

數(shù)據(jù)查詢:

$manager = new MongoDB/Driver/Manager( mongodb://localhost:27017 $query = new MongoDB/Driver/Query([ age = 24], [ sort = [ age = 1]]);$cursor = $manager- executeQuery( wjt.friend , $query);$data = [];foreach($cursor as $doc) { $data[] = $doc;echo pre print_r($data);

數(shù)據(jù)修改:

$manager = new MongoDB/Driver/Manager( mongodb://localhost:27017 $bulk = new MongoDB/Driver/BulkWrite;$bulk- update( [ name = JetWu5 ], [ $set = [ age = 30, promise = always smile! ]]$writeConcern = new MongoDB/Driver/WriteConcern(MongoDB/Driver/WriteConcern::MAJORITY, 1000);//可選,修改確認(rèn)$res = $manager- executeBulkWrite( wjt.friend , $bulk, $writeConcern);echo pre print_r($res);

數(shù)據(jù)刪除:

$manager = new MongoDB/Driver/Manager( mongodb://localhost:27017 $bulk = new MongoDB/Driver/BulkWrite;$bulk- delete([ name = JetWu3 $bulk- delete([ name = JetWu4 $writeConcern = new MongoDB/Driver/WriteConcern(MongoDB/Driver/WriteConcern::MAJORITY, 1000);//可選,修改確認(rèn)$res = $manager- executeBulkWrite( wjt.friend , $bulk, $writeConcern);echo pre print_r($res);

您可能感興趣的文章:

PHP操作Redis常用技巧總結(jié)php技巧

原生php實(shí)現(xiàn)excel文件讀寫的方法分析php技巧

PHP設(shè)計(jì)模式之單例模式原理與實(shí)現(xiàn)方法分析php技巧

以上就是PHP操作MongoDB實(shí)現(xiàn)增刪改查功能php技巧的詳細(xì)內(nèi)容,PHP教程

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
欧美二区三区在线| 4438亚洲最大| 国产亚洲欧美另类一区二区三区| 免费高清完整在线观看| va亚洲va日韩不卡在线观看| www.夜夜爱| 日本高清视频在线观看| 国产女主播视频一区二区| 精品在线视频一区二区| 亚洲欧美日韩系列| 亚洲成人在线免费| 日本不卡高清| 国产在线观看免费网站| 国产精品你懂的在线| 精品国产91久久久久久老师| 亚洲成人免费观看| 亚洲加勒比久久88色综合| 亚洲s色大片在线观看| 国产高清视频免费观看| 亚洲精品国产无套在线观| 亚洲国产精久久久久久| 国产美女视频免费观看下载软件| 久草在线在线精品观看| 日韩伦理福利| 亚洲第一视频网| 精品亚洲成av人在线观看| av影片在线| 在线视频专区| 国产精品一国产精品k频道56| 日韩你懂的在线观看| 麻豆av资源| 天天综合网久久综合网| 国产精品12区| 久久精品视频亚洲| 无国产精品白浆免费视| 亚洲国产精品99久久久久久久久| 日本韩国精品一区二区| 五月婷婷开心中文字幕| 国产美女免费看| 国产精品观看在线亚洲人成网| 99re视频这里只有精品| 欧美在线激情视频| 四虎影视最新地址| 六月丁香综合在线视频| 亚洲人成网站在线在线观看| 好吊的妞视频这里都有| 精品人妻一区二区三区日产乱码| 国产剧情在线视频| 欧美一级黄视频| 九九热精品视频国产| 亚洲av成人无码久久精品| 无码内射中文字幕岛国片| 亚洲欧美成人一区二区三区| 免费看a在线观看| 国产日韩欧美激情| 日本三级片在线观看| 日韩手机在线| 欧美一区二区三区四区在线| 五月婷婷欧美视频| 黄色小视频免费网站| 日韩av中文字幕一区二区三区| 久久久国产视频91| 艳母动漫在线免费观看| 色网站在线视频| 欧美在线精品一区| 免费在线视频观看| 日韩专区中文字幕一区二区| 国产亲伦免费视频播放| 国产 欧美 日韩 在线| 樱桃国产成人精品视频| 久久成人av少妇免费| 在线播放国产区| 国产精品自拍亚洲| 日本一区二区三区四区五区| 亚洲第一毛片| 亚洲久久久久| 日本精品久久电影| 亚洲不卡在线观看| 亚洲人成人无码网www国产| 国产一二三视频| 日韩一区二区影院| a级黄色免费视频| 性色av一区二区三区在线观看| 精品国产一区二区三区久久狼5月| 中文欧美日本在线资源| 欧美69xxxxx| 一区二区日韩在线观看| 色婷婷在线观看视频| 国产欧美日韩综合精品一区二区| 国产欧美一二三区| 国产电影一区二区三区| 亚洲综合一区二区三区| 一区二区国产精品精华液| 日日干日日操日日射| 国产精品视频男人的天堂| 欧美日韩在线看片| 中文字幕一区二区三区乱码图片| 成人在线视频福利| 国产成人精品免费视频大全最热| 欧美性极品少妇精品网站| 五月天久久久| 亚洲图片欧洲图片日韩av| 亚洲高清免费观看高清完整版| 亚洲丝袜另类动漫二区| 亚洲av无码成人精品区| 性久久久久久久久久| 欧美资源在线观看| 国产精品久久久久久久久动漫| 国产小视频在线免费观看| 亚洲一区二区三区四区五区中文| 污免费在线观看| 伦理电影国产精品| 美女啪啪无遮挡免费久久网站| 一区二区在线中文字幕电影视频| 久久亚洲一区二区三区明星换脸| 国产成人亚洲精品| 久久九九国产精品| 国产少妇在线观看| 国产欧美一级| 久久久久久亚洲| 欧美午夜一区二区三区| 亚洲男人天堂手机在线| av在线免费观看网址| 天天操天天射天天色| 91禁在线看| 久久精品久久综合| 亚洲啊v在线免费视频| 亚洲激情在线观看视频| 日本高清久久一区二区三区| 精品国产乱码久久久久久1区2匹| 欧美黄色成人| 国产精品一区二区av白丝下载| 免费精品视频在线| 亚洲人成网站在线播放2019| 在线日韩国产精品| 久久99国产精品久久99小说| xvideos成人免费中文版| 亚洲韩国青草视频| 国产日本精品视频| 一级片免费视频| 在线观看亚洲精品视频| 中文字幕av一区二区三区免费看| 亚洲视频一二三| 精品xxxxxbbbb欧美中文| 理论在线观看| 欧美亚洲高清一区| 一区二区三区四区免费观看| 蜜臀av粉嫩av懂色av| 欧美日韩免费做爰视频| 日本成年人网址| 国产精品a成v人在线播放| 国产精品高清网站| 欧美在线一级va免费观看| 欧美激情中文字幕一区二区| 久香视频在线观看| 国产精品自拍区| 国产suv一区二区三区88区| 欧美黑人3p| 亚洲欧美天堂网| 久久人人妻人人人人妻性色av| 秋霞欧美一区二区三区视频免费| 国产精品网站入口| 中文字幕日韩高清在线| 欧美日韩免费电影| 国产一区二区四区| 日本性视频网站| 亚洲福利视频网站| 偷拍中文亚洲欧美动漫| 中文字幕一区2区3区| 日本精品一二三区| 欧美另类女人| 亚洲欧美制服另类日韩| 色爱综合网欧美| 天天综合视频在线观看| 久久午夜国产精品| 日本亚洲欧美美色| 第九色区aⅴ天堂久久香| 欧美视频免费在线观看| 国产ts变态重口人妖hd| 成人久久久精品国产乱码一区二区| 日本一区二区动态图| 日韩在线播放一区| 亚洲午夜精品一区二区三区他趣| 久久全国免费久久青青小草| 亚洲精品一区二区口爆| 在线精品视频一区二区三四| 男人天堂成人在线| 欧美精品制服第一页| 91九色蝌蚪在线| 在线成人欧美| 中文无码av一区二区三区| 日韩三区视频| 男女猛烈无遮挡| 免费观看在线综合色| 国产精品一区二区不卡视频| 91九色丨porny丨极品女神| 91久久精品一区二区别| 色综合久久久久综合99| 欧美sm美女调教| 国产精品视频二区三区| 国产黄色免费在线观看| 国产精品久久久久久久久久久久久| 国产精品国精产品一二| 色一情一乱一伦一区二区三区日本| 嫩草视频免费在线观看| 成人欧美一区二区三区| 国内老司机av在线| 国产自产自拍视频在线观看| 欧美一区二区三区黄片| 日韩av网址在线| 日本久久伊人| 国产精品久久久久久久久久久久久久久久| 精品国产福利视频| 日本欧美一区二区三区不卡视频| 在线观看一级片| 免费人成在线观看播放视频| 中文字幕久热精品在线视频| 欧美成人精品福利网站| 国产在线不卡一区| 一级中文字幕一区二区| 国产亚洲精品熟女国产成人| 国产91精品在线观看| 欧美一区二区视频在线观看| 日本免费不卡一区二区| 99久精品视频在线观看视频| 最近日韩免费视频| h片在线播放| 中文字幕日韩欧美在线| 久久中文久久字幕| 久热精品在线播放| 欧美性大战久久久久xxx| 亚洲大片精品免费| 国产精品二线| caoporn超碰国产公开| 色哟哟入口国产精品| 国内精品免费一区二区三区| 麻豆av在线导航| 一级网站免费观看| 久久久免费精品| 99青春婷婷视频| 欧美另类暴力丝袜| 麻豆电影在线播放| 中文字幕制服丝袜| 国产综合精品| 青青草原国产视频| 欧美午夜在线视频| 青青草国产精品视频| 在线网址91| 精品电影一区二区| 波多野结衣在线免费观看| 在线观看国产福利视频| 久久久久亚洲av无码专区喷水| 中文字幕免费在线看| 久久一区二区免费播放| 国产69精品久久777的优势| 成人黄色免费在线观看| 无码人妻精品一区二区蜜桃百度| 在线观看免费视频黄| 新天天拍日日拍狠狠拍| 日本三级一区二区| 91福利免费| 国产欧美综合一区二区三区| 嫩草国产精品入口| 久草免费福利在线| 美女的奶胸大爽爽大片| 97在线看免费观看视频在线观看| 久草综合在线观看| 国产精品美女久久久久久| 先锋av资源网| 日韩极品在线| 色欲一区二区三区精品a片| 老司机精品福利视频| 国产精品系列在线| 精品国产一区二区三区四区vr| 曰本人一级毛片免费完整视频| 国产精品高潮呻吟久久av黑人| 视频二区在线| 国内精品久久久久久久| 国产精品主播| 精品免费一区二区三区蜜桃| 国产一区二区中文字幕免费看| 99久久久久久99| 草草浮力影院| 麻豆国产一区二区| 91精品国产乱| 亚洲不卡中文字幕| 久久综合入口| 97人妻精品一区二区三区| 欧美gayvideo| 精品日本一区二区三区在线观看| 国产日韩欧美成人| 国产精品不卡视频| 久久一区二区三区四区五区| 另类春色校园亚洲| 久久久人成影片一区二区三区在哪下载| 青青草视频在线免费播放| 可以看美女隐私的网站| 久久九九精品99国产精品| 亚洲综合视频网| 久操视频免费在线观看| www.4438全国最大| 久久久国产精品不卡| 6080午夜伦理| 日韩小视频在线播放| 亚洲性人人天天夜夜摸| 国产精品久久久久久久久免费| 日韩黄色免费网站| 国产又爽又黄又舒服又刺激视频| 亚洲欧洲三级电影| 三年中文在线观看免费大全中国| 成人一区二区不卡免费| 少妇毛片一区二区三区| 国产午夜在线观看| 最新国产热播激情视频| 国产一区二区三区在线观看免费| 一区二区三区欧美久久| h小视频在线观看网| 夜夜骚av一区二区三区| 国产精品美女一区二区视频| 丝袜美腿玉足3d专区一区| 精品伊人久久97| 国产精品日韩电影| 免费观看又污又黄在线观看国产| 国产天堂在线播放视频| 日本一区二区三区四区高清视频| 亚洲在线观看一区| 国产在线精品日韩| 日本激情一区二区|