成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁(yè) > 知識(shí)庫(kù) > PHP中信息格式化操作詳解(MessageFormatter類(lèi))

PHP中信息格式化操作詳解(MessageFormatter類(lèi))

熱門(mén)標(biāo)簽:溫州外呼系統(tǒng)招商 手機(jī)外呼系統(tǒng)什么原理 上海400客服電話怎么申請(qǐng) 400電話個(gè)人能不能辦理 合肥ai電銷(xiāo)機(jī)器人費(fèi)用 天津電銷(xiāo)外呼系統(tǒng)違法嗎 銀行信貸電話機(jī)器人 凱立德地鐵站地圖標(biāo)注 滄州電銷(xiāo)外呼系統(tǒng)價(jià)格

前言

在國(guó)際化組件的學(xué)習(xí)過(guò)程中,我們已經(jīng)接觸過(guò)了 NumberFormatter 這種數(shù)字的格式化操作,它可以讓我們將數(shù)字轉(zhuǎn)換成標(biāo)準(zhǔn)格式、貨幣、本地語(yǔ)言等形式。今天我們來(lái)學(xué)習(xí)的是另一種專(zhuān)門(mén)用于信息格式化的類(lèi) MessageFormatter ,它主要是針對(duì)字符串的操作。

MessageFormatter 也是遵循的 ICU 規(guī)范,底層是 C 中的 ICU 操作,所以和 C 相關(guān)代碼的使用方式?jīng)]有太大的區(qū)別。

格式化

// 格式化
$fmt = new MessageFormatter("zh_CN", "{0,number,integer} 只猴子在 {1,number,integer} 顆樹(shù)上,每只樹(shù)上有 {2,number} 只猴子");
echo $fmt->format([4560, 123, 4560 / 123]), PHP_EOL;
// 4,560 只猴子在 123 顆樹(shù)上,每只樹(shù)上有 37.073 只猴子

$fmt = new MessageFormatter("de", "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum");
echo $fmt->format([4560, 123, 4560 / 123]), PHP_EOL;
// 4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum

echo MessageFormatter::formatMessage("zh_CN", "{0,number,integer} 只猴子在 {1,number,integer} 顆樹(shù)上,每只樹(shù)上有 {2,number} 只猴子", [4560, 123, 4560 / 123]), PHP_EOL;
// 4,560 只猴子在 123 顆樹(shù)上,每只樹(shù)上有 37.073 只猴子

echo MessageFormatter::formatMessage("de", "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum", [4560, 123, 4560 / 123]), PHP_EOL;
// 4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum

看到了嗎?類(lèi)似于 PDO 里預(yù)編譯操作的占位符。在調(diào)用 format() 方法后,就可以讓這個(gè)方法里面的參數(shù)來(lái)替換占位符的內(nèi)容。我們可以指定占位的所使用的參數(shù)類(lèi)型和位置,{參數(shù)下標(biāo),類(lèi)型,擴(kuò)展類(lèi)型} 這就是這個(gè)信息數(shù)據(jù)格式化的占位符的規(guī)則定義。看起來(lái)貌似很簡(jiǎn)單呀,其實(shí)它還有更多的功能,我們將在后面看到。不過(guò)需要注意的是,它只支持?jǐn)?shù)字、日期、文本片段類(lèi)型,文章最后的參考鏈接中有官方的文檔可以查閱。

MessageFormatter::formatMessage() 這個(gè)靜態(tài)方法可以一次性地指定語(yǔ)言、預(yù)操作語(yǔ)句以及替換參數(shù),不需要先進(jìn)行實(shí)例化再調(diào)用 format() 方法。

反格式化(根據(jù)規(guī)則獲取參數(shù)數(shù)組)

能夠進(jìn)行格式化,當(dāng)然我們也能夠根據(jù)語(yǔ)句規(guī)則來(lái)反格式化相關(guān)的字符串從而獲得對(duì)應(yīng)占位符的參數(shù)列表。

// 根據(jù)格式化規(guī)則反向獲取規(guī)則參數(shù)
$fmt = new MessageFormatter('zh_CN', "{0,number,integer} 只猴子在 {1,number,integer} 顆樹(shù)上,每只樹(shù)上有 {2,number} 只猴子");
$res = $fmt->parse("4,560 只猴子在 123 樹(shù)上,每只樹(shù)上有 37.073 只猴子");
var_export($res); // false
echo "ERROR: " . $fmt->getErrorMessage() . " (" . $fmt->getErrorCode() . ")\n";
// ERROR: Parsing failed: U_MESSAGE_PARSE_ERROR (6)

$fmt = new MessageFormatter('en_US', "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree");
$res = $fmt->parse("4,560 monkeys on 123 trees make 37.073 monkeys per tree");
var_export($res);
// array (
//     0 => 4560,
//     1 => 123,
//     2 => 37.073,
//   )

$fmt = new MessageFormatter('de', "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum");
$res = $fmt->parse("4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum");
var_export($res);
// array (
//     0 => 4560,
//     1 => 123,
//     2 => 37.073,
//   )

$fmt = MessageFormatter::parseMessage('de', "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum", "4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum");
var_export($fmt);
// array (
//     0 => 4560,
//     1 => 123,
//     2 => 37.073,
//   )

使用實(shí)例化后的 parse() 方法或者直接使用靜態(tài)方法 MessageFormatter::parseMessage() 就能夠?qū)崿F(xiàn)這樣的操作。需要注意的是,對(duì)于 zh_CN ,也就是中文語(yǔ)言區(qū)域設(shè)置來(lái)說(shuō),這個(gè)操作是會(huì)出問(wèn)題的。通過(guò) getErrorMessage() 和 getErrorCode() 就可以看到錯(cuò)誤信息以及錯(cuò)誤代碼,可以看到對(duì)于中文來(lái)說(shuō),直接返回的錯(cuò)誤信息就是解析失敗。

設(shè)置獲取規(guī)則

在實(shí)例化的對(duì)象中,我們還可以動(dòng)態(tài)地修改規(guī)則語(yǔ)句。

// 設(shè)置獲取規(guī)則
$fmt = new MessageFormatter("zh_CN", "{0, number} 猴子在 {1, number} 顆樹(shù)上");
echo "默認(rèn)規(guī)則: '" . $fmt->getPattern(), PHP_EOL; // 默認(rèn)規(guī)則: '{0, number} 猴子在 {1, number} 顆樹(shù)上'
echo "格式化結(jié)果:" . $fmt->format(array(123, 456)), PHP_EOL; // 格式化結(jié)果:123 猴子在 456 顆樹(shù)上

$fmt->setPattern("{0, number} 顆樹(shù)上有 {1, number} 猴子");
echo "新規(guī)則: '" . $fmt->getPattern(), PHP_EOL; // 新規(guī)則: '{0, number} 顆樹(shù)上有 {1, number} 猴子'
echo "新規(guī)則格式化結(jié)果: " . $fmt->format(array(123, 456)), PHP_EOL; // 新規(guī)則格式化結(jié)果:123 顆樹(shù)上有 456 猴子

非常簡(jiǎn)單的兩個(gè)方法,setPattern() 用于設(shè)置當(dāng)前實(shí)例化對(duì)應(yīng)的格式化規(guī)則,getPattern() 用于獲取查看當(dāng)前實(shí)例化對(duì)象的格式化規(guī)則。在設(shè)置了新規(guī)則之后,進(jìn)行 format() 或者 parse() 時(shí)就是按照新的規(guī)則語(yǔ)句來(lái)執(zhí)行的了。

格式化完整示例

上面說(shuō)過(guò),除了數(shù)字之外,還可以有日期格式的占位符,我們就來(lái)演示一下。

echo MessageFormatter::formatMessage('zh_CN', '今天是 {3, date, full},當(dāng)前時(shí)間為 {3, time, ::Hms}, 我要準(zhǔn)備開(kāi)始 {0} 了,今天要和 {2,number,integer} 人見(jiàn)面,還不能忘了要交 {1,number,currency} 元的電費(fèi)', ['上班', 35.33, 25, new DateTime()]), PHP_EOL;
// 今天是 2020年11月16日星期一,當(dāng)前時(shí)間為 10:09:30, 我要準(zhǔn)備開(kāi)始 上班 了,今天要和 25 人見(jiàn)面,還不能忘了要交 ¥35.33 元的電費(fèi)

在這段語(yǔ)句中,我們給定的參數(shù)順序并不是按照語(yǔ)句中占位符出現(xiàn)的順序,這樣并沒(méi)有影響,只需要指定對(duì)應(yīng)位置的參數(shù)數(shù)組下標(biāo)即可,比如第一個(gè) {3, date, full} 指定的就是參數(shù)數(shù)組中的第4個(gè)元素(從0開(kāi)始)。date 類(lèi)型、time 類(lèi)型都是可以指定的類(lèi)型,當(dāng)然我們也可以指定它們的 日期格式 比如第二個(gè)占位符我們就只顯示當(dāng)前的時(shí)分秒信息。

如果是字符串信息,那么只需要一個(gè)簡(jiǎn)單的 {0} 就可以了,字符串不需要太多的類(lèi)型設(shè)置。而數(shù)字類(lèi)型則可以直接格式化為貨幣等類(lèi)型,就像我們之前講過(guò)的 NumberFormatter 中可以指定的那些類(lèi)型一樣。

看完這一個(gè)示例是不是就感覺(jué)到這個(gè) MessageFormatter 的強(qiáng)大之處了?別急,它還有更牛X的能力。

根據(jù)參數(shù)內(nèi)容進(jìn)行復(fù)數(shù)顯示

對(duì)于復(fù)數(shù)來(lái)說(shuō),其實(shí)中文語(yǔ)法中并沒(méi)有這樣的語(yǔ)句,比如說(shuō)一只貓是 a cat ,兩只貓是 two cats 。

echo MessageFormatter::formatMessage('en_US', 'I Have {0, plural, =0{no cat} =1{a cat} other{# cats}}', [0]),PHP_EOL; // I Have no cat
echo MessageFormatter::formatMessage('en_US', 'I Have {0, plural, =0{no cat} =1{a cat} other{# cats}}', [1]),PHP_EOL; // I Have a cat
echo MessageFormatter::formatMessage('en_US', 'I Have {0, plural, =0{no cat} =1{a cat} other{# cats}}', [2]),PHP_EOL; // I Have 2 cats

雖說(shuō)參數(shù)類(lèi)型的 plural 是復(fù)數(shù)的意思,不過(guò)其實(shí)我們可以將它看做是一個(gè) switch() 語(yǔ)句的用法。

echo MessageFormatter::formatMessage('zh_CN', '我{0, plural, =0{沒(méi)有貓} other{有 # 只貓}}', [0]),PHP_EOL; // 我沒(méi)有貓
echo MessageFormatter::formatMessage('zh_CN', '我{0, plural, =0{沒(méi)有貓} other{有 # 只貓}}', [1]),PHP_EOL; // 我有 1 只貓
echo MessageFormatter::formatMessage('zh_CN', '我{0, plural, =0{沒(méi)有貓} other{有 # 只貓}}', [2]),PHP_EOL; // 我有 2 只貓

# 號(hào)就是對(duì)應(yīng)的參數(shù)值的原內(nèi)容,這一套語(yǔ)法又讓這個(gè) MessageFormatter 類(lèi)上了一個(gè)層次吧,還有呢!我們先來(lái)看看這個(gè)問(wèn)題:

echo MessageFormatter::formatMessage('en_US', 'I Have {0, plural, =0{no cat} =1{a cat} other{# cats}}', [-1]),PHP_EOL; // I Have -1 cats

參數(shù)傳錯(cuò)了,-1 只貓可不對(duì)吧,沒(méi)關(guān)系,還有別的處理方式解決這個(gè)問(wèn)題。

選擇條件規(guī)則

// 選擇表達(dá)式
echo MessageFormatter::formatMessage('en_US', 'I Have {0, choice, 0 #no cats| 1 #one cat | 2 #{0, number} cats}', [-1]),PHP_EOL; // I Have no cats
echo MessageFormatter::formatMessage('en_US', 'I Have {0, choice, 0 #no cats| 1 #one cat | 2 #{0, number} cats}', [0]),PHP_EOL; // I Have no cats
echo MessageFormatter::formatMessage('en_US', 'I Have {0, choice, 0 #no cats| 1 #one cat | 2 #{0, number} cats}', [1]),PHP_EOL; // I Have one cat
echo MessageFormatter::formatMessage('en_US', 'I Have {0, choice, 0 #no cats| 1 #one cat | 2 #{0, number} cats}', [2]),PHP_EOL; // I Have 2 cats
echo MessageFormatter::formatMessage('en_US', 'I Have {0, choice, 0 #no cats| 1 #one cat | 2 #{0, number} cats}', [10]),PHP_EOL; // I Have 10 cats

choice 這個(gè)單詞就能看出來(lái),這是一個(gè)選擇相關(guān)的語(yǔ)法。后面的參數(shù)其實(shí)是一個(gè)區(qū)間,分別代表 = 0 | 1 | >=2 的范圍內(nèi)使用哪個(gè)內(nèi)容。另外,一個(gè)占位符規(guī)則里面還可以繼續(xù)套占位符號(hào)的。

總結(jié)

又大開(kāi)了一回眼界。文章開(kāi)頭的兩部分內(nèi)容其實(shí)并沒(méi)有什么驚喜的地方,畢竟普通的字符串替換都能辦到,不過(guò)越往后面可是越來(lái)越精彩啊。當(dāng)然,它的相關(guān)規(guī)則語(yǔ)法應(yīng)該還有更多,只是這些資料非常少,不管是 PHP 官方文檔還是 ICU 的官方文檔都沒(méi)有找到過(guò)多的介紹。所以我們還是報(bào)以學(xué)習(xí)了解的態(tài)度先知道有這么回事,將來(lái)發(fā)現(xiàn)更有趣的資料后再來(lái)分享學(xué)習(xí)吧,也希望有使用過(guò)的朋友留言一起討論哦!

到此這篇關(guān)于PHP中信息格式化操作的文章就介紹到這了,更多相關(guān)PHP中信息格式化內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

測(cè)試代碼:

github.com/zhangyue050…

參考文檔:

www.php.net/manual/zh/c…

userguide.icu-project.org/formatparse…

您可能感興趣的文章:
  • PHP中常用的字符串格式化函數(shù)總結(jié)
  • 深入理解php printf() 輸出格式化的字符串
  • PHP vsprintf()函數(shù)格式化字符串操作原理解析
  • PHP數(shù)字格式化
  • PHP 防注入函數(shù)(格式化數(shù)據(jù))
  • php格式化時(shí)間戳

標(biāo)簽:金華 洛陽(yáng) 赤峰 怒江 溫州 白城 七臺(tái)河 酒泉

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《PHP中信息格式化操作詳解(MessageFormatter類(lèi))》,本文關(guān)鍵詞  PHP,中,信息,格式化,操作,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PHP中信息格式化操作詳解(MessageFormatter類(lèi))》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于PHP中信息格式化操作詳解(MessageFormatter類(lèi))的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    韩国三级av在线免费观看| 精品国产乱码一区二区三区| 欧洲av无码放荡人妇网站| 亚洲影视资源| a视频免费看| av网在线观看| 免费一级特黄录像| 久久精品免费一区二区| 亚洲超碰97人人做人人爱| 日日草天天干| 久久成人在线视频| 中文字幕在线观看视频www| 蜜桃av久久久亚洲精品| 欧美日韩国产一区在线| 91久久国产综合久久91| 二区三区不卡| 亚洲黄色片免费| 欧美一级片免费在线| 日本网站在线观看一区二区三区| 日韩视频欧美视频| 99亚洲男女激情在线观看| avtt天堂在线| 丰满岳乱妇一区二区三区| 亚洲视频在线观看不卡| 亚洲s色大片| 亚洲iv一区二区三区| 国产一区二区美女| 国产一二三四五区| 国产精品一区二| 天天综合网在线观看| 日韩精品高清在线| 亚洲欧美国产制服动漫| 精品中国亚洲| 3d性欧美动漫精品xxxx软件| 欧美freesex8一10精品| 精品美女视频| 日韩中文字幕在线观看视频| 国偷自产av一区二区三区麻豆| 蜜桃91丨九色丨蝌蚪91桃色| 日韩人妻无码一区二区三区99| 日韩亚洲电影在线| 粉嫩在线一区二区三区视频| 成人性a激情免费视频| 亚洲一二在线观看| 亚洲有吗中文字幕| 天天操夜夜拍| 99久久99久久久精品棕色圆| 久久久久久久久久久91| 天天舔天天干| 美国十次av导航亚洲入口| 国产日韩精品一区二区三区| 西西444www无码大胆| 色综合97天天综合网| 永久看片925tv| 黄色成人在线网址| 91尤物视频在线观看| 在线观看理论片| 久久高清免费观看| 一区二区三区欧美亚洲| 黄色片在线观看免费| 两性午夜免费视频| 亚洲一区二区图片| 日本wwwwww| 国产一区二区三区四区大秀| 91色视频在线观看| 91成人福利在线观看| 日韩欧乱色一区二区三区在线| 黄色片免费大全| 99热国内精品永久免费观看| 黄色一级一级片| av一区和二区| 波多野结衣在线观看| 亚洲一区二区三区国产| 欧美人与禽猛交乱配视频| 视频免费在线观看| 北条麻妃在线观看| 日韩亚洲色图| 久久伊人一区| 欧美福利在线播放| 欧亚乱熟女一区二区在线| 开心激情综合| 成人三级做爰av| 91久久久久国产一区二区| 91视频在线看| 香蕉伊大人中文在线观看| 人妻互换免费中文字幕| 欧洲亚洲妇女av| 亚洲福利一区| 日韩一区二区三区精品视频第3页| 亚洲影院在线| 亚洲美女免费精品视频在线观看| 亚洲精品美女久久| 精品一区二区三区自拍图片区| 久久久久久久久久久91| 啪啪av大全导航福利综合导航| 97超碰国产一区二区三区| 国产美女www爽爽爽| 国产成人一区二区三区别| 日韩在线视频在线观看| 亚洲娇小xxxx欧美娇小| 国产超碰精品在线观看| 亚洲精品免费在线观看视频| 免费观看国产视频| 精品视频一区二区三区免费| 2017天天干夜夜操| 成人在线免费在线观看| 日韩国产欧美在线视频| 国产真实夫妇交换视频| 国产91av在线| 欧美日本不卡高清| 成人一级免费视频| 国产美女www| 成人精品国产福利| 亚洲一区二区三区四区的| 水莓100在线视频| 92国产精品观看| 国产精品在线看| 欧美中文字幕一二三四区| 国产精品蜜臀在线观看| 国产一二三在线观看| 久久久久久亚洲精品中文字幕| 91精品国产九九九久久久亚洲| 亚洲免费av片| 亚洲精品影院在线观看| 欧美精品一区二区三区久久久竹菊| 国产亚洲成人一区| 国产精品一二三区在线观看| 超级碰碰视频| 午夜精品免费| 久久品道一品道久久精品| 国产一区二区三区色淫影院| 国产精品一二一区| 久久永久免费| 怡红院红怡院欧美aⅴ怡春院| 免费a级人成a大片在线观看| 韩国理伦片一区二区三区在线播放| 亚洲老妇色熟女老太| 最近免费中文字幕中文高清百度| 成人午夜黄色影院| 99国产精品99久久久久久| 一区二区传媒有限公司| 欧美一区二区免费视频| 日韩视频在线永久播放| 国产精品一区二区三区四| 亚洲社区在线观看| 国产一区二区三区不卡av| 色婷婷亚洲综合| 97视频在线免费| 一区二区不卡在线视频 午夜欧美不卡在| 久久精品www| 久久国产一级片| 日韩欧美国产亚洲| 久久福利网址导航| 久久久av电影| 黄色网址多少| 精品久久亚洲一级α| 成人黄色片视频| 日本不卡一区二区三区| 91大神xh98hx在线播放| 成人午夜在线免费| 99在线高清视频在线播放| 国产精品av网站| 高清精品一区二区三区一区| 久久精品国产视频| 日本成人手机在线| 伊人久久综合视频| 五月综合激情日本mⅴ| 粉嫩在线一区二区三区视频| 性色av香蕉一区二区| 日韩欧美在线观看一区二区三区| 国内伊人久久久久久网站视频| 波多野结衣视频在线播放| 米奇777超碰欧美日韩亚洲| 日本肉肉一区| 伊人色综合一区二区三区影院视频| 日韩av在线播放观看| 午夜裸体女人视频网站在线观看| 在线观看污污视频| 91探花在线观看| 欧美精品久久久久久久久25p| 日本高清不卡码| 高h视频在线播放| 国产乱码精品| 久久久视频免费观看| 午夜欧美在线| 亚洲小少妇裸体bbw| 欧美天天视频| 99久久亚洲一区二区三区青草| 人妻丰满熟妇av无码区app| 91欧美激情另类亚洲| 国产日韩免费视频| 98精品国产自产在线观看| 九热爱视频精品视频| 免费看欧美黑人毛片| 国产精品成人一区二区三区电影毛片| 色婷婷精品国产一区二区三区| 在线观看岛国片| 91麻豆精品在线| 美女av在线播放| 色婷婷综合在线观看| 亚洲精品1234| 免费久久99精品国产自在现线| 欧美黄色小说| 色一情一乱一乱一区91| 国产精品入口麻豆原神| 久久精品理论片| 黄色免费看网站| 午夜国产一区二区| 91人人爽人人爽人人精88v| 国产精品久久不卡| 黄av在线免费观看| 欧美日韩国产美女| 国精产品一区一区三区mba下载| 第一次破处视频| 91国内外精品自在线播放| 国产精品66部| 日韩av中文字幕在线播放| 欧美系列精品| 成人18精品视频| 欧美精品色一区二区三区| 亚洲在线国产日韩欧美| 国产日本欧美视频| 欧美激情久久久久| 日韩精品一二三| 熟妇人妻无乱码中文字幕真矢织江| 亚洲乱码中文字幕综合| 成人高清一区| 一区二区自拍| 中文在线а√在线8| 91av在线视频观看| 91po在线观看91精品国产性色| 欧美性极品videosbest| 影音先锋日韩| 亚洲欧洲国产日韩| 一区二区冒白浆视频| 国产欧美综合色| 乱人伦xxxx国语对白| 三级在线看中文字幕完整版| 区一区二日本| 国产v日韩v欧美v| 欧美亚洲日本网站| 性高潮免费视频| 青青草视频国产| 欧美大片顶级少妇| 捷克做爰xxxⅹ性视频| 果冻天美麻豆一区二区国产| 国产精品久久久久久久久搜平片| 亚洲免费网站| 色综合天天狠狠| 精品电影一区二区三区| yellow视频在线观看一区二区| 国产精品久久久久久网站| 中文字幕一区视频| 精品入口蜜桃| 亚洲成a人无码| 成人自拍偷拍| 同性视频网站免费男| 无遮挡的视频在线观看| 国产精品一区二区久久精品| 91成人天堂久久成人| 在线免费看毛片| 国产亚洲情侣一区二区无| 91国产在线精品| 超碰97在线资源| 久久综合九色欧美狠狠| 伊人久久精品| www.啪啪.com| 九七久久人人| 五月婷婷六月丁香| 免费一区二区视频| a天堂资源在线| 欧美性猛交xxxx黑人猛交| 免费a级在线播放| 国产精品99久久久久久有的能看| 欧美jizzhd欧美精品巨大| 蜜桃视频网站在线| 国产小视频免费观看| 免费看三级黄色片| 国产精品无码免费专区午夜| 一本色道久久综合一区| 91精品免费观看| 日韩中文字幕av| 中文字幕人妻一区二区| 欧美日韩久久久久| 国产精品1区2区3区| 谁有免费的黄色网址| 欧美性高潮床叫视频| 国产精品久久中文| 日韩一区二区三区不卡视频| 欧美精品www| 天天躁日日躁aaaxxⅹ| 亚洲一区二区三区四区五区xx| 欧美日韩精品免费观看视频完整| 久久久精品在线观看| 国产美女www爽爽爽视频| 国内毛片久久| 369你懂的电影天堂| 免费观看的av| 91国产美女视频| 一级性生活毛片| 怡红院在线观看| 中文字幕在线二区| 男人用嘴添女人下身免费视频| 日本午夜精品视频| 少妇高潮一区二区三区99小说| 国产一区二区三区探花| 在线精品小视频| 伊人成人在线观看| 97精品国产91久久久久久| 中国女人内谢69xxxx视频| 粗大黑人巨茎大战欧美成人| 黄色一级片网址| 久久国产精品免费| 日韩毛片在线视频| 成人免费网站观看| 久久成人国产精品入口| av一区二区三区四区| 欧美国产精品一区| 日产精品久久久久久久性色| 美女av一区| 18视频在线观看网站| 国产精品国产国产aⅴ| 欧美日韩一区二区三区四区| 欧美另类极品| 亚洲第一狼人社区| 成人精品国产| 91综合网人人| 亚洲国产日韩在线一区|