欧美午夜诱惑在线_一区二区三级片_国产成人综合v在线_国产91精品无码免费_高清综合亚洲三级_黄色软件下载观看_上萬網友分享国产精品高潮呻吟久久av心得_美女扒开尿眼无遮挡免费视频_好紧好湿好黄的视频免费_亚洲日韩欧美中字五月天

PHP中如何用ODBC方法對Excel文件讀取

Admin 2022-08-03 群英技術(shù)資訊 753 次瀏覽

關(guān)于“PHP中如何用ODBC方法對Excel文件讀取”的知識有一些人不是很理解,對此小編給大家總結(jié)了相關(guān)內(nèi)容,具有一定的參考借鑒價值,而且易于學(xué)習(xí)與理解,希望能對大家有所幫助,有這個方面學(xué)習(xí)需要的朋友就繼續(xù)往下看吧。
   


應(yīng)該有ODBC的讀取方法,還沒有試,今天的方法簡單了很多,只需要加載兩個文件即可,這兩個文件(OLERead.php、reader.php)我找了好長時間才找到,放在后面。

試驗成功的代碼:

<?php
require_once 'reader.php';//加載Reader
$excelData = new Spreadsheet_Excel_Reader();//創(chuàng)建 Reader
$excelData->setOutputEncoding('utf-8');//設(shè)置文本輸出編碼
$excelData->read("20210930.xls");//讀取Excel文件
echo '總行數(shù):'.$excelData->sheets[0]['numRows'];//Excel行數(shù)
echo '總列數(shù):'.$excelData->sheets[0]['numCols'];//Excel列數(shù)
 
for ($i = 1; $i <= $excelData->sheets[0]['numRows']; $i++) {
	  $strRowData='';
	  for ($j = 1; $j <= $excelData->sheets[0]['numCols']; $j++) {		   
		    if ( isset( $excelData->sheets[0]['cells'][$i][$j] )){
				$strColData=$excelData->sheets[0]['cells'][$i][$j];
				$strRowData=$strRowData.'  '.$strColData;
			}
			echo $strRowData.'<br>';
	  }
}
?>

注意:在輸出的時候判斷一下,即isset( $excelData->sheets[0]['cells'][$i][$j]),不然可能會報錯。

能讀出來做處理就好辦了。

reader.php文件內(nèi)容:(新建一個reader.php,將代碼拷入即可)

<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
 
/**
* A class for reading Microsoft Excel Spreadsheets.
*
* Originally developed by Vadim Tkachenko under the name PHPExcelReader.
* (http://sourceforge.net/projects/phpexcelreader)
* Based on the Java version by Andy Khan (http://www.andykhan.com).  Now
* maintained by David Sanders.  Reads only Biff 7 and Biff 8 formats.
*
* PHP versions 4 and 5
*
* LICENSE: This source file is subject to version 3.0 of the PHP license
* that is available through the world-wide-web at the following URI:
* http://www.php.net/license/3_0.txt.  If you did not receive a copy of
* the PHP License and are unable to obtain it through the web, please
* send a note to [email protected] so we can mail you a copy immediately.
*
* @category   Spreadsheet
* @package    Spreadsheet_Excel_Reader
* @author     Vadim Tkachenko <[email protected]>
* @license    http://www.php.net/license/3_0.txt  PHP License 3.0
* @version    CVS: $Id: reader.php 19 2007-03-13 12:42:41Z shangxiao $
* @link       http://pear.php.net/package/Spreadsheet_Excel_Reader
* @see        OLE, Spreadsheet_Excel_Writer
*/
 
 
//require_once 'PEAR.php';
require_once 'OLERead.php';
//require_once 'OLE.php';
 
define('SPREADSHEET_EXCEL_READER_BIFF8',             0x600);
define('SPREADSHEET_EXCEL_READER_BIFF7',             0x500);
define('SPREADSHEET_EXCEL_READER_WORKBOOKGLOBALS',   0x5);
define('SPREADSHEET_EXCEL_READER_WORKSHEET',         0x10);
 
define('SPREADSHEET_EXCEL_READER_TYPE_BOF',          0x809);
define('SPREADSHEET_EXCEL_READER_TYPE_EOF',          0x0a);
define('SPREADSHEET_EXCEL_READER_TYPE_BOUNDSHEET',   0x85);
define('SPREADSHEET_EXCEL_READER_TYPE_DIMENSION',    0x200);
define('SPREADSHEET_EXCEL_READER_TYPE_ROW',          0x208);
define('SPREADSHEET_EXCEL_READER_TYPE_DBCELL',       0xd7);
define('SPREADSHEET_EXCEL_READER_TYPE_FILEPASS',     0x2f);
define('SPREADSHEET_EXCEL_READER_TYPE_NOTE',         0x1c);
define('SPREADSHEET_EXCEL_READER_TYPE_TXO',          0x1b6);
define('SPREADSHEET_EXCEL_READER_TYPE_RK',           0x7e);
define('SPREADSHEET_EXCEL_READER_TYPE_RK2',          0x27e);
define('SPREADSHEET_EXCEL_READER_TYPE_MULRK',        0xbd);
define('SPREADSHEET_EXCEL_READER_TYPE_MULBLANK',     0xbe);
define('SPREADSHEET_EXCEL_READER_TYPE_INDEX',        0x20b);
define('SPREADSHEET_EXCEL_READER_TYPE_SST',          0xfc);
define('SPREADSHEET_EXCEL_READER_TYPE_EXTSST',       0xff);
define('SPREADSHEET_EXCEL_READER_TYPE_CONTINUE',     0x3c);
define('SPREADSHEET_EXCEL_READER_TYPE_LABEL',        0x204);
define('SPREADSHEET_EXCEL_READER_TYPE_LABELSST',     0xfd);
define('SPREADSHEET_EXCEL_READER_TYPE_NUMBER',       0x203);
define('SPREADSHEET_EXCEL_READER_TYPE_NAME',         0x18);
define('SPREADSHEET_EXCEL_READER_TYPE_ARRAY',        0x221);
define('SPREADSHEET_EXCEL_READER_TYPE_STRING',       0x207);
define('SPREADSHEET_EXCEL_READER_TYPE_FORMULA',      0x406);
define('SPREADSHEET_EXCEL_READER_TYPE_FORMULA2',     0x6);
define('SPREADSHEET_EXCEL_READER_TYPE_FORMAT',       0x41e);
define('SPREADSHEET_EXCEL_READER_TYPE_XF',           0xe0);
define('SPREADSHEET_EXCEL_READER_TYPE_BOOLERR',      0x205);
define('SPREADSHEET_EXCEL_READER_TYPE_UNKNOWN',      0xffff);
define('SPREADSHEET_EXCEL_READER_TYPE_NINETEENFOUR', 0x22);
define('SPREADSHEET_EXCEL_READER_TYPE_MERGEDCELLS',  0xE5);
 
define('SPREADSHEET_EXCEL_READER_UTCOFFSETDAYS' ,    25569);
define('SPREADSHEET_EXCEL_READER_UTCOFFSETDAYS1904', 24107);
define('SPREADSHEET_EXCEL_READER_MSINADAY',          86400);
//define('SPREADSHEET_EXCEL_READER_MSINADAY', 24 * 60 * 60);
 
//define('SPREADSHEET_EXCEL_READER_DEF_NUM_FORMAT', "%.2f");
define('SPREADSHEET_EXCEL_READER_DEF_NUM_FORMAT',    "%s");
 
 
/*
* Place includes, constant defines and $_GLOBAL settings here.
* Make sure they have appropriate docblocks to avoid phpDocumentor
* construing they are documented by the page-level docblock.
*/
 
/**
* A class for reading Microsoft Excel Spreadsheets.
*
* Originally developed by Vadim Tkachenko under the name PHPExcelReader.
* (http://sourceforge.net/projects/phpexcelreader)
* Based on the Java version by Andy Khan (http://www.andykhan.com).  Now
* maintained by David Sanders.  Reads only Biff 7 and Biff 8 formats.
*
* @category   Spreadsheet
* @package    Spreadsheet_Excel_Reader
* @author     Vadim Tkachenko <[email protected]>
* @copyright  1997-2005 The PHP Group
* @license    http://www.php.net/license/3_0.txt  PHP License 3.0
* @version    Release: @package_version@
* @link       http://pear.php.net/package/PackageName
* @see        OLE, Spreadsheet_Excel_Writer
*/
class Spreadsheet_Excel_Reader
{
    /**
     * Array of worksheets found
     *
     * @var array
     * @access public
     */
    var $boundsheets = array();
 
    /**
     * Array of format records found
     * 
     * @var array
     * @access public
     */
    var $formatRecords = array();
 
    /**
     * todo
     *
     * @var array
     * @access public
     */
    var $sst = array();
 
    /**
     * Array of worksheets
     *
     * The data is stored in 'cells' and the meta-data is stored in an array
     * called 'cellsInfo'
     *
     * Example:
     *
     * $sheets  -->  'cells'  -->  row --> column --> Interpreted value
     *          -->  'cellsInfo' --> row --> column --> 'type' - Can be 'date', 'number', or 'unknown'
     *                                            --> 'raw' - The raw data that Excel stores for that data cell
     *
     * @var array
     * @access public
     */
    var $sheets = array();
 
    /**
     * The data returned by OLE
     *
     * @var string
     * @access public
     */
    var $data;
 
    /**
     * OLE object for reading the file
     *
     * @var OLE object
     * @access private
     */
    var $_ole;
 
    /**
     * Default encoding
     *
     * @var string
     * @access private
     */
    var $_defaultEncoding;
 
    /**
     * Default number format
     *
     * @var integer
     * @access private
     */
    var $_defaultFormat = SPREADSHEET_EXCEL_READER_DEF_NUM_FORMAT;
 
    /**
     * todo
     * List of formats to use for each column
     *
     * @var array
     * @access private
     */
    var $_columnsFormat = array();
 
    /**
     * todo
     *
     * @var integer
     * @access private
     */
    var $_rowoffset = 1;
 
    /**
     * todo
     *
     * @var integer
     * @access private
     */
    var $_coloffset = 1;
 
    /**
     * List of default date formats used by Excel
     *
     * @var array
     * @access public
     */
    var $dateFormats = array (
        0xe => "d/m/Y",
        0xf => "d-M-Y",
        0x10 => "d-M",
        0x11 => "M-Y",
        0x12 => "h:i a",
        0x13 => "h:i:s a",
        0x14 => "H:i",
        0x15 => "H:i:s",
        0x16 => "d/m/Y H:i",
        0x2d => "i:s",
        0x2e => "H:i:s",
        0x2f => "i:s.S");
 
    /**
     * Default number formats used by Excel
     *
     * @var array
     * @access public
     */
    var $numberFormats = array(
        0x1 => "%1.0f",     // "0"
        0x2 => "%1.2f",     // "0.00",
        0x3 => "%1.0f",     //"#,##0",
        0x4 => "%1.2f",     //"#,##0.00",
        0x5 => "%1.0f",     /*"$#,##0;($#,##0)",*/
        0x6 => '$%1.0f',    /*"$#,##0;($#,##0)",*/
        0x7 => '$%1.2f',    //"$#,##0.00;($#,##0.00)",
        0x8 => '$%1.2f',    //"$#,##0.00;($#,##0.00)",
        0x9 => '%1.0f%%',   // "0%"
        0xa => '%1.2f%%',   // "0.00%"
        0xb => '%1.2f',     // 0.00E00",
        0x25 => '%1.0f',    // "#,##0;(#,##0)",
        0x26 => '%1.0f',    //"#,##0;(#,##0)",
        0x27 => '%1.2f',    //"#,##0.00;(#,##0.00)",
        0x28 => '%1.2f',    //"#,##0.00;(#,##0.00)",
        0x29 => '%1.0f',    //"#,##0;(#,##0)",
        0x2a => '$%1.0f',   //"$#,##0;($#,##0)",
        0x2b => '%1.2f',    //"#,##0.00;(#,##0.00)",
        0x2c => '$%1.2f',   //"$#,##0.00;($#,##0.00)",
        0x30 => '%1.0f');   //"##0.0E0";
 
    // }}}
    // {{{ Spreadsheet_Excel_Reader()
 
    /**
     * Constructor
     *
     * Some basic initialisation
     */ 
    function Spreadsheet_Excel_Reader()
    {
         $this->_ole = new OLERead();
        $this->setUTFEncoder('iconv');
    }
 
    // }}}
    // {{{ setOutputEncoding()
 
    /**
     * Set the encoding method
     *
     * @param string Encoding to use
     * @access public
     */
    function setOutputEncoding($encoding)
    {
        $this->_defaultEncoding = $encoding;
    }
 
    // }}}
    // {{{ setUTFEncoder()
 
    /**
     *  $encoder = 'iconv' or 'mb'
     *  set iconv if you would like use 'iconv' for encode UTF-16LE to your encoding
     *  set mb if you would like use 'mb_convert_encoding' for encode UTF-16LE to your encoding
     *
     * @access public
     * @param string Encoding type to use.  Either 'iconv' or 'mb'
     */
    function setUTFEncoder($encoder = 'iconv')
    {
        $this->_encoderFunction = '';
 
        if ($encoder == 'iconv') {
            $this->_encoderFunction = function_exists('iconv') ? 'iconv' : '';
        } elseif ($encoder == 'mb') {
            $this->_encoderFunction = function_exists('mb_convert_encoding') ?
                                      'mb_convert_encoding' :
                                      '';
        }
    }
 
    // }}}
    // {{{ setRowColOffset()
 
    /**
     * todo
     *
     * @access public
     * @param offset
     */
    function setRowColOffset($iOffset)
    {
        $this->_rowoffset = $iOffset;
        $this->_coloffset = $iOffset;
    }
 
    // }}}
    // {{{ setDefaultFormat()
 
    /**
     * Set the default number format
     *
     * @access public
     * @param Default format
     */
    function setDefaultFormat($sFormat)
    {
        $this->_defaultFormat = $sFormat;
    }
 
    // }}}
    // {{{ setColumnFormat()
 
    /**
     * Force a column to use a certain format
     *
     * @access public
     * @param integer Column number
     * @param string Format
     */
    function setColumnFormat($column, $sFormat)
    {
        $this->_columnsFormat[$column] = $sFormat;
    }
 
 
    // }}}
    // {{{ read()
 
    /**
     * Read the spreadsheet file using OLE, then parse
     *
     * @access public
     * @param filename
     * @todo return a valid value
     */
    function read($sFileName)
    {
    /*
        require_once 'OLE.php';
        $ole = new OLE();
        $ole->read($sFileName);
        foreach ($ole->_list as $i => $pps) {
            if (($pps->Name == 'Workbook' || $pps->Name == 'Book') &&
                $pps->Size >= SMALL_BLOCK_THRESHOLD) {
                $this->data = $ole->getData($i, 0, $ole->getDataLength($i));
            } elseif ($pps->Name == 'Root Entry') {
                $this->data = $ole->getData($i, 0, $ole->getDataLength($i));
            }
            //var_dump(strlen($ole->getData($i, 0, $ole->getDataLength($i))), $pps->Name, md5($this->data), $ole->getDataLength($i));
        }
//exit;
        $this->_parse();
        return sizeof($this->sheets) > 0;
    */
 
        $res = $this->_ole->read($sFileName);
 
        // oops, something goes wrong (Darko Miljanovic)
        if($res === false) {
            // check error code
            if($this->_ole->error == 1) {
            // bad file
                die('The filename ' . $sFileName . ' is not readable');
            }
            // check other error codes here (eg bad fileformat, etc...)
        }
 
        $this->data = $this->_ole->getWorkBook();
 
 
        /*
        $res = $this->_ole->read($sFileName);
        if ($this->isError($res)) {
//        var_dump($res);
            return $this->raiseError($res);
        }
        $total = $this->_ole->ppsTotal();
        for ($i = 0; $i < $total; $i++) {
            if ($this->_ole->isFile($i)) {
                $type = unpack("v", $this->_ole->getData($i, 0, 2));
                if ($type[''] == 0x0809)  { // check if it's a BIFF stream
                    $this->_index = $i;
                    $this->data = $this->_ole->getData($i, 0, $this->_ole->getDataLength($i));
                    break;
                }
            }
        }
        if ($this->_index === null) {
            return $this->raiseError("$file doesn't seem to be an Excel file");
        }
        */
 
    //echo "data =".$this->data;
        //$this->readRecords();
        $this->_parse();
    }
 
 
    // }}}
    // {{{ _parse()
 
    /**
     * Parse a workbook
     *
     * @access private
     * @return bool
     */
    function _parse()
    {
        $pos = 0;
 
        $code = ord($this->data[$pos]) | ord($this->data[$pos+1])<<8;
        $length = ord($this->data[$pos+2]) | ord($this->data[$pos+3])<<8;
 
        $version = ord($this->data[$pos + 4]) | ord($this->data[$pos + 5])<<8;
        $substreamType = ord($this->data[$pos + 6]) | ord($this->data[$pos + 7])<<8;
        //echo "Start parse code=".base_convert($code,10,16)." version=".base_convert($version,10,16)." substreamType=".base_convert($substreamType,10,16).""."\n";
 
        if (($version != SPREADSHEET_EXCEL_READER_BIFF8) &&
            ($version != SPREADSHEET_EXCEL_READER_BIFF7)) {
            return false;
        }
 
        if ($substreamType != SPREADSHEET_EXCEL_READER_WORKBOOKGLOBALS){
            return false;
        }
 
        //print_r($rec);
        $pos += $length + 4;
 
        $code = ord($this->data[$pos]) | ord($this->data[$pos+1])<<8;
        $length = ord($this->data[$pos+2]) | ord($this->data[$pos+3])<<8;
 
        while ($code != SPREADSHEET_EXCEL_READER_TYPE_EOF) {
            switch ($code) {
                case SPREADSHEET_EXCEL_READER_TYPE_SST:
                    //echo "Type_SST\n";
                     $spos = $pos + 4;
                     $limitpos = $spos + $length;
                     $uniqueStrings = $this->_GetInt4d($this->data, $spos+4);
                                                $spos += 8;
                                       for ($i = 0; $i < $uniqueStrings; $i++) {
        // Read in the number of characters
                                                if ($spos == $limitpos) {
                                                $opcode = ord($this->data[$spos]) | ord($this->data[$spos+1])<<8;
                                                $conlength = ord($this->data[$spos+2]) | ord($this->data[$spos+3])<<8;
                                                        if ($opcode != 0x3c) {
                                                                return -1;
                                                        }
                                                $spos += 4;
                                                $limitpos = $spos + $conlength;
                                                }
                                                $numChars = ord($this->data[$spos]) | (ord($this->data[$spos+1]) << 8);
                                                //echo "i = $i pos = $pos numChars = $numChars ";
                                                $spos += 2;
                                                $optionFlags = ord($this->data[$spos]);
                                                $spos++;
                                        $asciiEncoding = (($optionFlags & 0x01) == 0) ;
                                                $extendedString = ( ($optionFlags & 0x04) != 0);
 
                                                // See if string contains formatting information
                                                $richString = ( ($optionFlags & 0x08) != 0);
 
                                                if ($richString) {
                                        // Read in the crun
                                                        $formattingRuns = ord($this->data[$spos]) | (ord($this->data[$spos+1]) << 8);
                                                        $spos += 2;
                                                }
 
                                                if ($extendedString) {
                                                  // Read in cchExtRst
                                                  $extendedRunLength = $this->_GetInt4d($this->data, $spos);
                                                  $spos += 4;
                                                }
 
                                                $len = ($asciiEncoding)? $numChars : $numChars*2;
                                                if ($spos + $len < $limitpos) {
                                                                $retstr = substr($this->data, $spos, $len);
                                                                $spos += $len;
                                                }else{
                                                        // found countinue
                                                        $retstr = substr($this->data, $spos, $limitpos - $spos);
                                                        $bytesRead = $limitpos - $spos;
                                                        $charsLeft = $numChars - (($asciiEncoding) ? $bytesRead : ($bytesRead / 2));
                                                        $spos = $limitpos;
 
                                                         while ($charsLeft > 0){
                                                                $opcode = ord($this->data[$spos]) | ord($this->data[$spos+1])<<8;
                                                                $conlength = ord($this->data[$spos+2]) | ord($this->data[$spos+3])<<8;
                                                                        if ($opcode != 0x3c) {
                                                                                return -1;
                                                                        }
                                                                $spos += 4;
                                                                $limitpos = $spos + $conlength;
                                                                $option = ord($this->data[$spos]);
                                                                $spos += 1;
                                                                  if ($asciiEncoding && ($option == 0)) {
                                                                                $len = min($charsLeft, $limitpos - $spos); // min($charsLeft, $conlength);
                                                                    $retstr .= substr($this->data, $spos, $len);
                                                                    $charsLeft -= $len;
                                                                    $asciiEncoding = true;
                                                                  }elseif (!$asciiEncoding && ($option != 0)){
                                                                                $len = min($charsLeft * 2, $limitpos - $spos); // min($charsLeft, $conlength);
                                                                    $retstr .= substr($this->data, $spos, $len);
                                                                    $charsLeft -= $len/2;
                                                                    $asciiEncoding = false;
                                                                  }elseif (!$asciiEncoding && ($option == 0)) {
                                                                // Bummer - the string starts off as Unicode, but after the
                                                                // continuation it is in straightforward ASCII encoding
                                                                                $len = min($charsLeft, $limitpos - $spos); // min($charsLeft, $conlength);
                                                                        for ($j = 0; $j < $len; $j++) {
                                                                 $retstr .= $this->data[$spos + $j].chr(0);
                                                                }
                                                            $charsLeft -= $len;
                                                                $asciiEncoding = false;
                                                                  }else{
                                                            $newstr = '';
                                                                    for ($j = 0; $j < strlen($retstr); $j++) {
                                                                      $newstr = $retstr[$j].chr(0);
                                                                    }
                                                                    $retstr = $newstr;
                                                                                $len = min($charsLeft * 2, $limitpos - $spos); // min($charsLeft, $conlength);
                                                                    $retstr .= substr($this->data, $spos, $len);
                                                                    $charsLeft -= $len/2;
                                                                    $asciiEncoding = false;
                                                                        //echo "Izavrat\n";
                                                                  }
                                                          $spos += $len;
 
                                                         }
                                                }
                                                $retstr = ($asciiEncoding) ? $retstr : $this->_encodeUTF16($retstr);
//                                              echo "Str $i = $retstr\n";
                                        if ($richString){
                                                  $spos += 4 * $formattingRuns;
                                                }
 
                                                // For extended strings, skip over the extended string data
                                                if ($extendedString) {
                                                  $spos += $extendedRunLength;
                                                }
                                                        //if ($retstr == 'Derby'){
                                                        //      echo "bb\n";
                                                        //}
                                                $this->sst[]=$retstr;
                                       }
                    /*$continueRecords = array();
                    while ($this->getNextCode() == Type_CONTINUE) {
                        $continueRecords[] = &$this->nextRecord();
                    }
                    //echo " 1 Type_SST\n";
                    $this->shareStrings = new SSTRecord($r, $continueRecords);
                    //print_r($this->shareStrings->strings);
                     */
                     // echo 'SST read: '.($time_end-$time_start)."\n";
                    break;
 
                case SPREADSHEET_EXCEL_READER_TYPE_FILEPASS:
                    return false;
                    break;
                case SPREADSHEET_EXCEL_READER_TYPE_NAME:
                    //echo "Type_NAME\n";
                    break;
                case SPREADSHEET_EXCEL_READER_TYPE_FORMAT:
                        $indexCode = ord($this->data[$pos+4]) | ord($this->data[$pos+5]) << 8;
 
                        if ($version == SPREADSHEET_EXCEL_READER_BIFF8) {
                            $numchars = ord($this->data[$pos+6]) | ord($this->data[$pos+7]) << 8;
                            if (ord($this->data[$pos+8]) == 0){
                                $formatString = substr($this->data, $pos+9, $numchars);
                            } else {
                                $formatString = substr($this->data, $pos+9, $numchars*2);
                            }
                        } else {
                            $numchars = ord($this->data[$pos+6]);
                            $formatString = substr($this->data, $pos+7, $numchars*2);
                        }
 
                    $this->formatRecords[$indexCode] = $formatString;
                   // echo "Type.FORMAT\n";
                    break;
                case SPREADSHEET_EXCEL_READER_TYPE_XF:
                        //global $dateFormats, $numberFormats;
                        $indexCode = ord($this->data[$pos+6]) | ord($this->data[$pos+7]) << 8;
                        //echo "\nType.XF ".count($this->formatRecords['xfrecords'])." $indexCode ";
                        if (array_key_exists($indexCode, $this->dateFormats)) {
                            //echo "isdate ".$dateFormats[$indexCode];
                            $this->formatRecords['xfrecords'][] = array(
                                    'type' => 'date',
                                    'format' => $this->dateFormats[$indexCode]
                                    );
                        }elseif (array_key_exists($indexCode, $this->numberFormats)) {
                        //echo "isnumber ".$this->numberFormats[$indexCode];
                            $this->formatRecords['xfrecords'][] = array(
                                    'type' => 'number',
                                    'format' => $this->numberFormats[$indexCode]
                                    );
                        }else{
                            $isdate = FALSE;
                            if ($indexCode > 0){
                                if (isset($this->formatRecords[$indexCode]))
                                    $formatstr = $this->formatRecords[$indexCode];
                                //echo '.other.';
                                //echo "\ndate-time=$formatstr=\n";
                                if ($formatstr)
                                if (preg_match("/[^hmsday\/\-:\s]/i", $formatstr) == 0) { // found day and time format
                                    $isdate = TRUE;
                                    $formatstr = str_replace('mm', 'i', $formatstr);
                                    $formatstr = str_replace('h', 'H', $formatstr);
                                    //echo "\ndate-time $formatstr \n";
                                }
                            }
 
                            if ($isdate){
                                $this->formatRecords['xfrecords'][] = array(
                                        'type' => 'date',
                                        'format' => $formatstr,
                                        );
                            }else{
                                $this->formatRecords['xfrecords'][] = array(
                                        'type' => 'other',
                                        'format' => '',
                                        'code' => $indexCode
                                        );
                            }
                        }
                        //echo "\n";
                    break;
                case SPREADSHEET_EXCEL_READER_TYPE_NINETEENFOUR:
                    //echo "Type.NINETEENFOUR\n";
                    $this->nineteenFour = (ord($this->data[$pos+4]) == 1);
                    break;
                case SPREADSHEET_EXCEL_READER_TYPE_BOUNDSHEET:
                    //echo "Type.BOUNDSHEET\n";
                        $rec_offset = $this->_GetInt4d($this->data, $pos+4);
                        $rec_typeFlag = ord($this->data[$pos+8]);
                        $rec_visibilityFlag = ord($this->data[$pos+9]);
                        $rec_length = ord($this->data[$pos+10]);
 
                        if ($version == SPREADSHEET_EXCEL_READER_BIFF8){
                            $chartype =  ord($this->data[$pos+11]);
                            if ($chartype == 0){
                                $rec_name    = substr($this->data, $pos+12, $rec_length);
                            } else {
                                $rec_name    = $this->_encodeUTF16(substr($this->data, $pos+12, $rec_length*2));
                            }
                        }elseif ($version == SPREADSHEET_EXCEL_READER_BIFF7){
                                $rec_name    = substr($this->data, $pos+11, $rec_length);
                        }
                    $this->boundsheets[] = array('name'=>$rec_name,
                                                 'offset'=>$rec_offset);
 
                    break;
 
            }
 
            //echo "Code = ".base_convert($r['code'],10,16)."\n";
            $pos += $length + 4;
            $code = ord($this->data[$pos]) | ord($this->data[$pos+1])<<8;
            $length = ord($this->data[$pos+2]) | ord($this->data[$pos+3])<<8;
 
            //$r = &$this->nextRecord();
            //echo "1 Code = ".base_convert($r['code'],10,16)."\n";
        }
 
        foreach ($this->boundsheets as $key=>$val){
            $this->sn = $key;
            $this->_parsesheet($val['offset']);
        }
        return true;
 
    }
 
    /**
     * Parse a worksheet
     *
     * @access private
     * @param todo
     * @todo fix return codes
     */
    function _parsesheet($spos)
    {
        $cont = true;
        // read BOF
        $code = ord($this->data[$spos]) | ord($this->data[$spos+1])<<8;
        $length = ord($this->data[$spos+2]) | ord($this->data[$spos+3])<<8;
 
        $version = ord($this->data[$spos + 4]) | ord($this->data[$spos + 5])<<8;
        $substreamType = ord($this->data[$spos + 6]) | ord($this->data[$spos + 7])<<8;
 
        if (($version != SPREADSHEET_EXCEL_READER_BIFF8) && ($version != SPREADSHEET_EXCEL_READER_BIFF7)) {
            return -1;
        }
 
        if ($substreamType != SPREADSHEET_EXCEL_READER_WORKSHEET){
            return -2;
        }
        //echo "Start parse code=".base_convert($code,10,16)." version=".base_convert($version,10,16)." substreamType=".base_convert($substreamType,10,16).""."\n";
        $spos += $length + 4;
        //var_dump($this->formatRecords);
    //echo "code $code $length";
        while($cont) {
            //echo "mem= ".memory_get_usage()."\n";
//            $r = &$this->file->nextRecord();
            $lowcode = ord($this->data[$spos]);
            if ($lowcode == SPREADSHEET_EXCEL_READER_TYPE_EOF) break;
            $code = $lowcode | ord($this->data[$spos+1])<<8;
            $length = ord($this->data[$spos+2]) | ord($this->data[$spos+3])<<8;
            $spos += 4;
            $this->sheets[$this->sn]['maxrow'] = $this->_rowoffset - 1;
            $this->sheets[$this->sn]['maxcol'] = $this->_coloffset - 1;
            //echo "Code=".base_convert($code,10,16)." $code\n";
            unset($this->rectype);
            $this->multiplier = 1; // need for format with %
            switch ($code) {
                case SPREADSHEET_EXCEL_READER_TYPE_DIMENSION:
                    //echo 'Type_DIMENSION ';
                    if (!isset($this->numRows)) {
                        if (($length == 10) ||  ($version == SPREADSHEET_EXCEL_READER_BIFF7)){
                            $this->sheets[$this->sn]['numRows'] = ord($this->data[$spos+2]) | ord($this->data[$spos+3]) << 8;
                            $this->sheets[$this->sn]['numCols'] = ord($this->data[$spos+6]) | ord($this->data[$spos+7]) << 8;
                        } else {
                            $this->sheets[$this->sn]['numRows'] = ord($this->data[$spos+4]) | ord($this->data[$spos+5]) << 8;
                            $this->sheets[$this->sn]['numCols'] = ord($this->data[$spos+10]) | ord($this->data[$spos+11]) << 8;
                        }
                    }
                    //echo 'numRows '.$this->numRows.' '.$this->numCols."\n";
                    break;
                case SPREADSHEET_EXCEL_READER_TYPE_MERGEDCELLS:
                    $cellRanges = ord($this->data[$spos]) | ord($this->data[$spos+1])<<8;
                    for ($i = 0; $i < $cellRanges; $i++) {
                        $fr =  ord($this->data[$spos + 8*$i + 2]) | ord($this->data[$spos + 8*$i + 3])<<8;
                        $lr =  ord($this->data[$spos + 8*$i + 4]) | ord($this->data[$spos + 8*$i + 5])<<8;
                        $fc =  ord($this->data[$spos + 8*$i + 6]) | ord($this->data[$spos + 8*$i + 7])<<8;
                        $lc =  ord($this->data[$spos + 8*$i + 8]) | ord($this->data[$spos + 8*$i + 9])<<8;
                        //$this->sheets[$this->sn]['mergedCells'][] = array($fr + 1, $fc + 1, $lr + 1, $lc + 1);
                        if ($lr - $fr > 0) {
                            $this->sheets[$this->sn]['cellsInfo'][$fr+1][$fc+1]['rowspan'] = $lr - $fr + 1;
                        }
                        if ($lc - $fc > 0) {
                            $this->sheets[$this->sn]['cellsInfo'][$fr+1][$fc+1]['colspan'] = $lc - $fc + 1;
                        }
                    }
                    //echo "Merged Cells $cellRanges $lr $fr $lc $fc\n";
                    break;
                case SPREADSHEET_EXCEL_READER_TYPE_RK:
                case SPREADSHEET_EXCEL_READER_TYPE_RK2:
                    //echo 'SPREADSHEET_EXCEL_READER_TYPE_RK'."\n";
                    $row = ord($this->data[$spos]) | ord($this->data[$spos+1])<<8;
                    $column = ord($this->data[$spos+2]) | ord($this->data[$spos+3])<<8;
                    $rknum = $this->_GetInt4d($this->data, $spos + 6);
                    $numValue = $this->_GetIEEE754($rknum);
                    //echo $numValue." ";
                    if ($this->isDate($spos)) {
                        list($string, $raw) = $this->createDate($numValue);
                    }else{
                        $raw = $numValue;
                        if (isset($this->_columnsFormat[$column + 1])){
                                $this->curformat = $this->_columnsFormat[$column + 1];
                        }
                        $string = sprintf($this->curformat, $numValue * $this->multiplier);
                        //$this->addcell(RKRecord($r));
                    }
                    $this->addcell($row, $column, $string, $raw);
                    //echo "Type_RK $row $column $string $raw {$this->curformat}\n";
                    break;
                case SPREADSHEET_EXCEL_READER_TYPE_LABELSST:
                        $row        = ord($this->data[$spos]) | ord($this->data[$spos+1])<<8;
                        $column     = ord($this->data[$spos+2]) | ord($this->data[$spos+3])<<8;
                        $xfindex    = ord($this->data[$spos+4]) | ord($this->data[$spos+5])<<8;
                        $index  = $this->_GetInt4d($this->data, $spos + 6);
            //var_dump($this->sst);
                        $this->addcell($row, $column, $this->sst[$index]);
                        //echo "LabelSST $row $column $string\n";
                    break;
                case SPREADSHEET_EXCEL_READER_TYPE_MULRK:
                    $row        = ord($this->data[$spos]) | ord($this->data[$spos+1])<<8;
                    $colFirst   = ord($this->data[$spos+2]) | ord($this->data[$spos+3])<<8;
                    $colLast    = ord($this->data[$spos + $length - 2]) | ord($this->data[$spos + $length - 1])<<8;
                    $columns    = $colLast - $colFirst + 1;
                    $tmppos = $spos+4;
                    for ($i = 0; $i < $columns; $i++) {
                        $numValue = $this->_GetIEEE754($this->_GetInt4d($this->data, $tmppos + 2));
                        if ($this->isDate($tmppos-4)) {
                            list($string, $raw) = $this->createDate($numValue);
                        }else{
                            $raw = $numValue;
                            if (isset($this->_columnsFormat[$colFirst + $i + 1])){
                                        $this->curformat = $this->_columnsFormat[$colFirst + $i + 1];
                                }
                            $string = sprintf($this->curformat, $numValue * $this->multiplier);
                        }
                      //$rec['rknumbers'][$i]['xfindex'] = ord($rec['data'][$pos]) | ord($rec['data'][$pos+1]) << 8;
                      $tmppos += 6;
                      $this->addcell($row, $colFirst + $i, $string, $raw);
                      //echo "MULRK $row ".($colFirst + $i)." $string\n";
                    }
                     //MulRKRecord($r);
                    // Get the individual cell records from the multiple record
                     //$num = ;
 
                    break;
                case SPREADSHEET_EXCEL_READER_TYPE_NUMBER:
                    $row    = ord($this->data[$spos]) | ord($this->data[$spos+1])<<8;
                    $column = ord($this->data[$spos+2]) | ord($this->data[$spos+3])<<8;
                    $tmp = unpack("ddouble", substr($this->data, $spos + 6, 8)); // It machine machine dependent
                    if ($this->isDate($spos)) {
                        list($string, $raw) = $this->createDate($tmp['double']);
                     //   $this->addcell(DateRecord($r, 1));
                    }else{
                        //$raw = $tmp[''];
                        if (isset($this->_columnsFormat[$column + 1])){
                                $this->curformat = $this->_columnsFormat[$column + 1];
                        }
                        $raw = $this->createNumber($spos);
                        $string = sprintf($this->curformat, $raw * $this->multiplier);
 
                     //   $this->addcell(NumberRecord($r));
                    }
                    $this->addcell($row, $column, $string, $raw);
                    //echo "Number $row $column $string\n";
                    break;
                case SPREADSHEET_EXCEL_READER_TYPE_FORMULA:
                case SPREADSHEET_EXCEL_READER_TYPE_FORMULA2:
                    $row    = ord($this->data[$spos]) | ord($this->data[$spos+1])<<8;
                    $column = ord($this->data[$spos+2]) | ord($this->data[$spos+3])<<8;
                    if ((ord($this->data[$spos+6])==0) && (ord($this->data[$spos+12])==255) && (ord($this->data[$spos+13])==255)) {
                        //String formula. Result follows in a STRING record
                        //echo "FORMULA $row $column Formula with a string<br>\n";
                    } elseif ((ord($this->data[$spos+6])==1) && (ord($this->data[$spos+12])==255) && (ord($this->data[$spos+13])==255)) {
                        //Boolean formula. Result is in +2; 0=false,1=true
                    } elseif ((ord($this->data[$spos+6])==2) && (ord($this->data[$spos+12])==255) && (ord($this->data[$spos+13])==255)) {
                        //Error formula. Error code is in +2;
                    } elseif ((ord($this->data[$spos+6])==3) && (ord($this->data[$spos+12])==255) && (ord($this->data[$spos+13])==255)) {
                        //Formula result is a null string.
                    } else {
                        // result is a number, so first 14 bytes are just like a _NUMBER record
                        $tmp = unpack("ddouble", substr($this->data, $spos + 6, 8)); // It machine machine dependent
                        if ($this->isDate($spos)) {
                            list($string, $raw) = $this->createDate($tmp['double']);
                         //   $this->addcell(DateRecord($r, 1));
                        }else{
                            //$raw = $tmp[''];
                            if (isset($this->_columnsFormat[$column + 1])){
                                    $this->curformat = $this->_columnsFormat[$column + 1];
                            }
                            $raw = $this->createNumber($spos);
                            $string = sprintf($this->curformat, $raw * $this->multiplier);
 
                         //   $this->addcell(NumberRecord($r));
                        }
                        $this->addcell($row, $column, $string, $raw);
                        //echo "Number $row $column $string\n";
                    }
                    break;
                case SPREADSHEET_EXCEL_READER_TYPE_BOOLERR:
                    $row    = ord($this->data[$spos]) | ord($this->data[$spos+1])<<8;
                    $column = ord($this->data[$spos+2]) | ord($this->data[$spos+3])<<8;
                    $string = ord($this->data[$spos+6]);
                    $this->addcell($row, $column, $string);
                    //echo 'Type_BOOLERR '."\n";
                    break;
                case SPREADSHEET_EXCEL_READER_TYPE_ROW:
                case SPREADSHEET_EXCEL_READER_TYPE_DBCELL:
                case SPREADSHEET_EXCEL_READER_TYPE_MULBLANK:
                    break;
                case SPREADSHEET_EXCEL_READER_TYPE_LABEL:
                    $row    = ord($this->data[$spos]) | ord($this->data[$spos+1])<<8;
                    $column = ord($this->data[$spos+2]) | ord($this->data[$spos+3])<<8;
                    $this->addcell($row, $column, substr($this->data, $spos + 8, ord($this->data[$spos + 6]) | ord($this->data[$spos + 7])<<8));
 
                   // $this->addcell(LabelRecord($r));
                    break;
 
                case SPREADSHEET_EXCEL_READER_TYPE_EOF:
                    $cont = false;
                    break;
                default:
                    //echo ' unknown :'.base_convert($r['code'],10,16)."\n";
                    break;
 
            }
            $spos += $length;
        }
 
        if (!isset($this->sheets[$this->sn]['numRows']))
             $this->sheets[$this->sn]['numRows'] = $this->sheets[$this->sn]['maxrow'];
        if (!isset($this->sheets[$this->sn]['numCols']))
             $this->sheets[$this->sn]['numCols'] = $this->sheets[$this->sn]['maxcol'];
 
    }
 
    /**
     * Check whether the current record read is a date
     *
     * @param todo
     * @return boolean True if date, false otherwise
     */
    function isDate($spos)
    {
        //$xfindex = GetInt2d(, 4);
        $xfindex = ord($this->data[$spos+4]) | ord($this->data[$spos+5]) << 8;
        //echo 'check is date '.$xfindex.' '.$this->formatRecords['xfrecords'][$xfindex]['type']."\n";
        //var_dump($this->formatRecords['xfrecords'][$xfindex]);
        if ($this->formatRecords['xfrecords'][$xfindex]['type'] == 'date') {
            $this->curformat = $this->formatRecords['xfrecords'][$xfindex]['format'];
            $this->rectype = 'date';
            return true;
        } else {
            if ($this->formatRecords['xfrecords'][$xfindex]['type'] == 'number') {
                $this->curformat = $this->formatRecords['xfrecords'][$xfindex]['format'];
                $this->rectype = 'number';
                if (($xfindex == 0x9) || ($xfindex == 0xa)){
                    $this->multiplier = 100;
                }
            }else{
                $this->curformat = $this->_defaultFormat;
                $this->rectype = 'unknown';
            }
            return false;
        }
    }
 
    //}}}
    //{{{ createDate()
 
    /**
     * Convert the raw Excel date into a human readable format
     *
     * Dates in Excel are stored as number of seconds from an epoch.  On 
     * Windows, the epoch is 30/12/1899 and on Mac it's 01/01/1904
     *
     * @access private
     * @param integer The raw Excel value to convert
     * @return array First element is the converted date, the second element is number a unix timestamp
     */ 
    function createDate($numValue)
    {
        if ($numValue > 1) {
            $utcDays = $numValue - ($this->nineteenFour ? SPREADSHEET_EXCEL_READER_UTCOFFSETDAYS1904 : SPREADSHEET_EXCEL_READER_UTCOFFSETDAYS);
            $utcValue = round(($utcDays+1) * SPREADSHEET_EXCEL_READER_MSINADAY);
            $string = date ($this->curformat, $utcValue);
            $raw = $utcValue;
        } else {
            $raw = $numValue;
            $hours = floor($numValue * 24);
            $mins = floor($numValue * 24 * 60) - $hours * 60;
            $secs = floor($numValue * SPREADSHEET_EXCEL_READER_MSINADAY) - $hours * 60 * 60 - $mins * 60;
            $string = date ($this->curformat, mktime($hours, $mins, $secs));
        }
 
        return array($string, $raw);
    }
 
    function createNumber($spos)
    {
        $rknumhigh = $this->_GetInt4d($this->data, $spos + 10);
        $rknumlow = $this->_GetInt4d($this->data, $spos + 6);
        //for ($i=0; $i<8; $i++) { echo ord($this->data[$i+$spos+6]) . " "; } echo "<br>";
        $sign = ($rknumhigh & 0x80000000) >> 31;
        $exp =  ($rknumhigh & 0x7ff00000) >> 20;
        $mantissa = (0x100000 | ($rknumhigh & 0x000fffff));
        $mantissalow1 = ($rknumlow & 0x80000000) >> 31;
        $mantissalow2 = ($rknumlow & 0x7fffffff);
        $value = $mantissa / pow( 2 , (20- ($exp - 1023)));
        if ($mantissalow1 != 0) $value += 1 / pow (2 , (21 - ($exp - 1023)));
        $value += $mantissalow2 / pow (2 , (52 - ($exp - 1023)));
        //echo "Sign = $sign, Exp = $exp, mantissahighx = $mantissa, mantissalow1 = $mantissalow1, mantissalow2 = $mantissalow2<br>\n";
        if ($sign) {$value = -1 * $value;}
        return  $value;
    }
 
    function addcell($row, $col, $string, $raw = '')
    {
        //echo "ADD cel $row-$col $string\n";
        $this->sheets[$this->sn]['maxrow'] = max($this->sheets[$this->sn]['maxrow'], $row + $this->_rowoffset);
        $this->sheets[$this->sn]['maxcol'] = max($this->sheets[$this->sn]['maxcol'], $col + $this->_coloffset);
        $this->sheets[$this->sn]['cells'][$row + $this->_rowoffset][$col + $this->_coloffset] = $string;
        if ($raw)
            $this->sheets[$this->sn]['cellsInfo'][$row + $this->_rowoffset][$col + $this->_coloffset]['raw'] = $raw;
        if (isset($this->rectype))
            $this->sheets[$this->sn]['cellsInfo'][$row + $this->_rowoffset][$col + $this->_coloffset]['type'] = $this->rectype;
 
    }
 
 
    function _GetIEEE754($rknum)
    {
        if (($rknum & 0x02) != 0) {
                $value = $rknum >> 2;
        } else {
//mmp
// first comment out the previously existing 7 lines of code here
//                $tmp = unpack("d", pack("VV", 0, ($rknum & 0xfffffffc)));
//                //$value = $tmp[''];
//                if (array_key_exists(1, $tmp)) {
//                    $value = $tmp[1];
//                } else {
//                    $value = $tmp[''];
//                }
// I got my info on IEEE754 encoding from
// http://research.microsoft.com/~hollasch/cgindex/coding/ieeefloat.html
// The RK format calls for using only the most significant 30 bits of the
// 64 bit floating point value. The other 34 bits are assumed to be 0
// So, we use the upper 30 bits of $rknum as follows...
         $sign = ($rknum & 0x80000000) >> 31;
        $exp = ($rknum & 0x7ff00000) >> 20;
        $mantissa = (0x100000 | ($rknum & 0x000ffffc));
        $value = $mantissa / pow( 2 , (20- ($exp - 1023)));
        if ($sign) {$value = -1 * $value;}
//end of changes by mmp
 
        }
 
        if (($rknum & 0x01) != 0) {
            $value /= 100;
        }
        return $value;
    }
 
    function _encodeUTF16($string)
    {
        $result = $string;
        if ($this->_defaultEncoding){
            switch ($this->_encoderFunction){
                case 'iconv' :     $result = iconv('UTF-16LE', $this->_defaultEncoding, $string);
                                break;
                case 'mb_convert_encoding' :     $result = mb_convert_encoding($string, $this->_defaultEncoding, 'UTF-16LE' );
                                break;
            }
        }
        return $result;
    }
 
    function _GetInt4d($data, $pos)
    {
        $value = ord($data[$pos]) | (ord($data[$pos+1]) << 8) | (ord($data[$pos+2]) << 16) | (ord($data[$pos+3]) << 24);
        if ($value>=4294967294)
        {
            $value=-2;
        }
        return $value;
    }
 
}
 
/*
 * Local variables:
 * tab-width: 4
 * c-basic-offset: 4
 * c-hanging-comment-ender-p: nil
 * End:
 */
 
?>

OLERead.php文件內(nèi)容:(新建OLERead.php,將代碼內(nèi)容拷入即可)

<?php
define('NUM_BIG_BLOCK_DEPOT_BLOCKS_POS', 0x2c);
define('SMALL_BLOCK_DEPOT_BLOCK_POS', 0x3c);
define('ROOT_START_BLOCK_POS', 0x30);
define('BIG_BLOCK_SIZE', 0x200);
define('SMALL_BLOCK_SIZE', 0x40);
define('EXTENSION_BLOCK_POS', 0x44);
define('NUM_EXTENSION_BLOCK_POS', 0x48);
define('PROPERTY_STORAGE_BLOCK_SIZE', 0x80);
define('BIG_BLOCK_DEPOT_BLOCKS_POS', 0x4c);
define('SMALL_BLOCK_THRESHOLD', 0x1000);
// property storage offsets
define('SIZE_OF_NAME_POS', 0x40);
define('TYPE_POS', 0x42);
define('START_BLOCK_POS', 0x74);
define('SIZE_POS', 0x78);
define('IDENTIFIER_OLE', pack("CCCCCCCC",0xd0,0xcf,0x11,0xe0,0xa1,0xb1,0x1a,0xe1));
 
//echo 'ROOT_START_BLOCK_POS = '.ROOT_START_BLOCK_POS."\n";
 
//echo bin2hex($data[ROOT_START_BLOCK_POS])."\n";
//echo "a=";
//echo $data[ROOT_START_BLOCK_POS];
//function log
 
function GetInt4d($data, $pos)
{
    $value = ord($data[$pos]) | (ord($data[$pos+1])    << 8) | (ord($data[$pos+2]) << 16) | (ord($data[$pos+3]) << 24);
    if ($value>=4294967294)
    {
        $value=-2;
    }
    return $value;
}
 
 
class OLERead {
    var $data = '';
    
    
    function OLERead(){
        
        
    }
    
    function read($sFileName){
        
        // check if file exist and is readable (Darko Miljanovic)
        if(!is_readable($sFileName)) {
            $this->error = 1;
            return false;
        }
        
        $this->data = @file_get_contents($sFileName);
        if (!$this->data) { 
            $this->error = 1; 
            return false; 
           }
           //echo IDENTIFIER_OLE;
           //echo 'start';
           if (substr($this->data, 0, 8) != IDENTIFIER_OLE) {
            $this->error = 1; 
            return false; 
           }
        $this->numBigBlockDepotBlocks = GetInt4d($this->data, NUM_BIG_BLOCK_DEPOT_BLOCKS_POS);
        $this->sbdStartBlock = GetInt4d($this->data, SMALL_BLOCK_DEPOT_BLOCK_POS);
        $this->rootStartBlock = GetInt4d($this->data, ROOT_START_BLOCK_POS);
        $this->extensionBlock = GetInt4d($this->data, EXTENSION_BLOCK_POS);
        $this->numExtensionBlocks = GetInt4d($this->data, NUM_EXTENSION_BLOCK_POS);
        
    /*
        echo $this->numBigBlockDepotBlocks." ";
        echo $this->sbdStartBlock." ";
        echo $this->rootStartBlock." ";
        echo $this->extensionBlock." ";
        echo $this->numExtensionBlocks." ";
        */
        //echo "sbdStartBlock = $this->sbdStartBlock\n";
        $bigBlockDepotBlocks = array();
        $pos = BIG_BLOCK_DEPOT_BLOCKS_POS;
       // echo "pos = $pos";
    $bbdBlocks = $this->numBigBlockDepotBlocks;
        
            if ($this->numExtensionBlocks != 0) {
                $bbdBlocks = (BIG_BLOCK_SIZE - BIG_BLOCK_DEPOT_BLOCKS_POS)/4; 
            }
        
        for ($i = 0; $i < $bbdBlocks; $i++) {
              $bigBlockDepotBlocks[$i] = GetInt4d($this->data, $pos);
              $pos += 4;
        }
        
        
        for ($j = 0; $j < $this->numExtensionBlocks; $j++) {
            $pos = ($this->extensionBlock + 1) * BIG_BLOCK_SIZE;
            $blocksToRead = min($this->numBigBlockDepotBlocks - $bbdBlocks, BIG_BLOCK_SIZE / 4 - 1);
 
            for ($i = $bbdBlocks; $i < $bbdBlocks + $blocksToRead; $i++) {
                $bigBlockDepotBlocks[$i] = GetInt4d($this->data, $pos);
                $pos += 4;
            }   
 
            $bbdBlocks += $blocksToRead;
            if ($bbdBlocks < $this->numBigBlockDepotBlocks) {
                $this->extensionBlock = GetInt4d($this->data, $pos);
            }
        }
 
       // var_dump($bigBlockDepotBlocks);
        
        // readBigBlockDepot
        $pos = 0;
        $index = 0;
        $this->bigBlockChain = array();
        
        for ($i = 0; $i < $this->numBigBlockDepotBlocks; $i++) {
            $pos = ($bigBlockDepotBlocks[$i] + 1) * BIG_BLOCK_SIZE;
            //echo "pos = $pos";    
            for ($j = 0 ; $j < BIG_BLOCK_SIZE / 4; $j++) {
                $this->bigBlockChain[$index] = GetInt4d($this->data, $pos);
                $pos += 4 ;
                $index++;
            }
        }
 
    //var_dump($this->bigBlockChain);
        //echo '=====2';
        // readSmallBlockDepot();
        $pos = 0;
        $index = 0;
        $sbdBlock = $this->sbdStartBlock;
        $this->smallBlockChain = array();
    
        while ($sbdBlock != -2) {
    
          $pos = ($sbdBlock + 1) * BIG_BLOCK_SIZE;
    
          for ($j = 0; $j < BIG_BLOCK_SIZE / 4; $j++) {
            $this->smallBlockChain[$index] = GetInt4d($this->data, $pos);
            $pos += 4;
            $index++;
          }
    
          $sbdBlock = $this->bigBlockChain[$sbdBlock];
        }
 
        
        // readData(rootStartBlock)
        $block = $this->rootStartBlock;
        $pos = 0;
        $this->entry = $this->__readData($block);
        
        /*
        while ($block != -2)  {
            $pos = ($block + 1) * BIG_BLOCK_SIZE;
            $this->entry = $this->entry.substr($this->data, $pos, BIG_BLOCK_SIZE);
            $block = $this->bigBlockChain[$block];
        }
        */
        //echo '==='.$this->entry."===";
        $this->__readPropertySets();
 
    }
    
     function __readData($bl) {
        $block = $bl;
        $pos = 0;
        $data = '';
        
        while ($block != -2)  {
            $pos = ($block + 1) * BIG_BLOCK_SIZE;
            $data = $data.substr($this->data, $pos, BIG_BLOCK_SIZE);
            //echo "pos = $pos data=$data\n";    
        $block = $this->bigBlockChain[$block];
        }
        return $data;
     }
        
    function __readPropertySets(){
        $offset = 0;
        //var_dump($this->entry);
        while ($offset < strlen($this->entry)) {
              $d = substr($this->entry, $offset, PROPERTY_STORAGE_BLOCK_SIZE);
            
              $nameSize = ord($d[SIZE_OF_NAME_POS]) | (ord($d[SIZE_OF_NAME_POS+1]) << 8);
              
              $type = ord($d[TYPE_POS]);
              //$maxBlock = strlen($d) / BIG_BLOCK_SIZE - 1;
        
              $startBlock = GetInt4d($d, START_BLOCK_POS);
              $size = GetInt4d($d, SIZE_POS);
        
            $name = '';
            for ($i = 0; $i < $nameSize ; $i++) {
              $name .= $d[$i];
            }
            
            $name = str_replace("\x00", "", $name);
            
            $this->props[] = array (
                'name' => $name, 
                'type' => $type,
                'startBlock' => $startBlock,
                'size' => $size);
 
            if (($name == "Workbook") || ($name == "Book")) {
                $this->wrkbook = count($this->props) - 1;
            }
 
            if ($name == "Root Entry") {
                $this->rootentry = count($this->props) - 1;
            }
            
            //echo "name ==$name=\n";
 
            
            $offset += PROPERTY_STORAGE_BLOCK_SIZE;
        }   
        
    }
    
    
    function getWorkBook(){
        if ($this->props[$this->wrkbook]['size'] < SMALL_BLOCK_THRESHOLD){
//          getSmallBlockStream(PropertyStorage ps)
 
            $rootdata = $this->__readData($this->props[$this->rootentry]['startBlock']);
            
            $streamData = '';
            $block = $this->props[$this->wrkbook]['startBlock'];
            //$count = 0;
            $pos = 0;
            while ($block != -2) {
                    $pos = $block * SMALL_BLOCK_SIZE;
                  $streamData .= substr($rootdata, $pos, SMALL_BLOCK_SIZE);
 
                  $block = $this->smallBlockChain[$block];
            }
            
            return $streamData;
            
 
        }else{
        
            $numBlocks = $this->props[$this->wrkbook]['size'] / BIG_BLOCK_SIZE;
            if ($this->props[$this->wrkbook]['size'] % BIG_BLOCK_SIZE != 0) {
                $numBlocks++;
            }
            
            if ($numBlocks == 0) return '';
            
            //echo "numBlocks = $numBlocks\n";
        //byte[] streamData = new byte[numBlocks * BIG_BLOCK_SIZE];
            //print_r($this->wrkbook);
            $streamData = '';
            $block = $this->props[$this->wrkbook]['startBlock'];
            //$count = 0;
            $pos = 0;
            //echo "block = $block";
            while ($block != -2) {
              $pos = ($block + 1) * BIG_BLOCK_SIZE;
              $streamData .= substr($this->data, $pos, BIG_BLOCK_SIZE);
              $block = $this->bigBlockChain[$block];
            }   
            //echo 'stream'.$streamData;
            return $streamData;
        }
    }
    
}
?>

感謝各位的閱讀,以上就是“PHP中如何用ODBC方法對Excel文件讀取”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對PHP中如何用ODBC方法對Excel文件讀取都有更深刻的體會了吧。這里是群英網(wǎng)絡(luò),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注! 群英智防CDN,智能加速解決方案
標(biāo)簽: PHP讀取Excel

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:[email protected]進行舉報,并提供相關(guān)證據(jù),查實之后,將立刻刪除涉嫌侵權(quán)內(nèi)容。

猜你喜歡

成為群英會員,開啟智能安全云計算之旅

立即注冊
專業(yè)資深工程師駐守
7X24小時快速響應(yīng)
一站式無憂技術(shù)支持
免費備案服務(wù)
免費撥打  400-678-4567
免費撥打  400-678-4567 免費撥打 400-678-4567 或 0668-2555555
在線客服
微信公眾號
返回頂部
返回頂部 返回頂部
在線客服
在線客服
无码成人免费全部观看 | 亚洲色大18成人网站WWW在线播放 | x8x8华人在线永久免费 | 久久久久亚洲国产 | 欧美精品人妖一二区 | 亚洲字幕在线一区二区三区 | 高清欧美激情在线观看最新 | 婷婷激情六月国产精品久久 | 亚洲高清偷拍一区二区三区 | 一级a在线观看亚洲 | 亚洲一区欧美二区中文字幕 | 日韩亚洲欧美中文字幕第六页 | 国产三级在线大全小视频 | 亚洲国产精品啪啪视频 | 98色花堂在线视频区免费 | 午夜高清性色生活片 | 天天综合网日韩电影 | 波多野结衣ac蜜芽在线观看 | 一级a在线观看亚洲 | 99re在线观看视频 | 久久桃花网成人久久网 | 國產午夜久久精品 | 亚洲区欧洲中文字幕 | 超碰伊人日日碰 | 成人免费毛片视频APP | 国产成人精品电影在线观看 | 色黄啪啪网18勿进 | 亚洲国产高清人在线国产麻豆入在线观看 | 精品成人免費自拍視頻 | 亚洲国产日韩a线视频 | 免费的av少妇网站 | 日本在线观看中文自拍 | 手机在线亚洲国产 | 五月天久久久丁香婷婷天堂 | 女人啪啪午夜性刺激免费看 | 日韩欧美精品亚洲一级在线 | 国产又黄又粗又猛又爽视频 | 午夜成人中文字幕视频网 | 免费高潮喷水内射视频 | 免费的av少妇网站 | 免费人成观看在线网 | 免费在线观看日韩aⅴ片 | 日韩亚洲精品全部在线观看 | 亚洲综合视频免费 | 菠萝蜜视频免费观看 | 亚洲AV日韩专区在线观看 | 91丝袜在线视频 | 国产精品国产三级农村妇女 | 亚洲欧美日韩狂野精品 | 欧美亚洲日韩国产综合va在线 | 麻豆精产国品一二三产区区别免费 | 久久爱成熟女人粗暴毛片 | 波多野结衣的电影教师系列 | 国产一级特黄录像免费播放 | 日韩欧美视频午夜一区二区 | 最新中文一区二区在线播放 | 亚洲日韩一区二区爱爱 | 成人亚洲天堂东京热 | 久久久噜噜噜久久熟女 | 亚洲熟妇色av一区二区浪潮 | 最近最新好看的中文字幕2019 | 一区二区三区人妻熟妇 | 精品亚洲成αv人在线观看 | 国产成人精品日本亚洲语音2 | 污污亚洲视频视频 | Av女优精品电影网站免费观看 | 國產成+人歐美+綜合在線觀看 | 被强奷服好爽好爽的视频 | 国产真实自在自线免费精品 | 国产精品亚洲精品爽爽 | 国产成人精品日本亚洲语音2 | 福利一区三区 | 久久久噜噜噜久久熟女 | 国产精品一区二区免费久久 | 日韩av中文字幕在线观看不卡 | 中日韩美女三级不卡视频 | 超碰伊人日日碰 | 精品国产免费一区二区三区四区 | 国产精品亚洲天堂123 | 欧美系列精品亚洲v在线观看 | 成人午夜影视亚洲精品 | 在线观看的免费无遮挡日本 | 91亚洲精华国内精华精华液 | 精品国产18禁99久久久久久 | 看到了就来爽爽吧国产午夜福利A 视频 | 国模人体久久黑巨吊少妇 | 亚洲欧洲综合影院 | 中文字幕一区二区无码专区 | 精品亚洲国产成人蜜臀A∨ | 忘忧草在线影院WWW神马 | 亚洲亚洲激情另类自拍 | 亚洲国产综合专区在线观看 | 在线看中文字幕日本 | 韩剧无码电影大全电影之家观看全集免费 | 惠民福利亚洲一区二区不卡在线观看 | 精品精品男人的天堂国产 | 久久精品视频五区 | 久久久噜噜噜久久熟女 | 99RE免费99RE在线视频 | 管鲍分拣中心官网排行榜最新章节 | 少妇精油按摩达到高潮一区二区三区 | 看到了就来爽爽吧国产午夜福利A 视频 | 色婷婷一区二区三区777 | 男女床上激情四射视频 | 欧美在线日韩免费2o19 | 国产在线一区二区91 | 国产激动情五月天 | 最近2019免费中文字幕6 | 亚洲av永久无码精品一百度 | 羞羞视频APP安卓安装下载 | 免费精东传媒VS天美传媒 | 积积对积积桶永久免费软件 | 亚洲老鸭窝A∨片一区二区三区 | 亚洲一区 欧美 | 黑人上司粗大拔不出来廣 | 日韩特色特黄在线播放 | 亚洲欧美清纯另类在线观看 | 波多野吉衣免费一区 | 影音先锋成人精品AV在线 | 亚洲国产成人久久精品app | 色噜噜国产亚洲精品 | 亚洲一二三四五久色 | 男女猛进猛出无遮掩免费视频 | china末成年videos强行 | 最新中文一区二区在线播放 | 四虎成人精品永久免费AV | 狠狠狠色丁香婷婷综合久久五月 | 精品国产粉嫩一区二区三区 | 菠萝蜜app污视频 | 欧美专区在线播放18禁 | 欧美久久精品一c片一级 | 国产成人精品日本亚洲语音2 | 一级黄色片子性爱做做久久 | 亚洲国产成人久久精品app | 精品一区二区三区亚洲A∨ | 狠狠90久久精品影视 | 亚洲一区二区三区资源在线 | 久久久久亚洲国产 | 亚洲精品国产aV成拍色拍婷 | 999精品欧美一区二区三区 | 99RE免费99RE在线视频 | 久久99精品久久久噜噜最新章节 | 欧美激情aa一区二区三区 | 成年丰满熟妇午夜免费费视频 | 日本免费无遮挡吸乳视频中文字幕 | 国产美女主播在线观看网 | 美女扒开尿眼让男人桶爽视频 | 国产精品啪啪一区二区三区 | 国产精品福利在线观看秒播 | 国产综合丝袜在线视频 | 女人直播软件app不收费 | 亚洲视色在线视频免费 | 少妇人妻不卡777精品久久 | 麻app豆传媒视频 | 在线观看精品一区二区三区色老头 | 欧美高冷美女h视频一区在线观看 | 免费在线观看成人网站 | 可以直接看的av网址站 | 日本不卡高清一区二区 | 亚洲欧洲另类在线观看 | 另类重口特殊AV无码 | 久久久精品一区二区视频 | 亚洲综合精品一区二区在线 | 国产日韩精品一区二区在线观看播放 | 日韩精品中文字幕无人区二 | 国产亚洲精品美女视频噜噜噜 | 日韩亚洲人成在线综合日本 | 法国2024久久精品无码 | 精品一区二区三区亚洲A∨ | 久久爱成熟女人粗暴毛片 | 91线上视频网站精品久久新推荐 | 字幕网资源yellow在线观看 | 99久久久国产精品丝袜 | 国产大全小草影院视频免费播放下载 | 99热亚洲色精品国产88 | 日韩毛片毛片久久精品 | 亚洲劲爆av在线 | 榴莲视频黄色软件下载网站 | 国产乱妇乱子视频在线播放国产 | 亚洲中文字幕亚洲高清在线 | 五月丁香合缴情在线看 | 美女日屄视频在线观看 | 无码成人午夜福利视频 | 91香蕉视频网站大全 | 老湿影院在线免费观看 | 亚洲av中字免费在线观看 | 麻豆精产国品一二三产区区别免费 | 国产又黄又粗又长又猛 | 中文字幕在线观 | 日本免费午夜影院 | 曰批免费40分钟免费观看 | 精品国模无码一区二区三区 | 一区二区伦理亚洲 | 精品久久AⅤ一区 | 亚洲欧洲国产成人综合一本 | 又粗又黄又爽的国产视频 | 日韩在线视频观看 | 熟女一区二区三区四区 | 久草视频资源在线 | 偷拍视频一区二区三区 | 免费观看亚洲黄色大片 | 亚洲第一日韩AV综合网 | 爽爽爽精品一区二区三区亚洲熟女 | 国产 欧美 自拍 | 一个人免费观看的www在线观看 | 日韩 日本 人成 欧美 | 亚洲国产高清影院在线观看 | 欧美乱人伦中文字幕视频 | 亚洲欧美日韩aⅴ一区二区三区 | 成年美女啪啪拍网站免费vip | 了解最新99精品欧美一区二区 | 国产精品成人ãv一区二区色综合 | 天堂网www在线最新版 | 国产精品综合AV一区二区首页 | 国产人妻久久精品二区三区特 | 亚洲成av人片一区二区在线观看 | 日本一区二区欧美亚洲国产 | 欧美一区二区三区午夜福利 | 中文字幕乱码中文乱码二区 | 适合晚上一个人看b站软件大全 | 少妇精品三级高清 | 国产浮力草草影院ccyy | 国产又粗又黄又爽又硬免费视频 | 在线免费观看做爱视频 | 国产精品一区二区性色aⅤ | 国产精品一二二区在线 | 99人妻少妇精品无码 | 免費啪視頻一區二區三區 | 亚洲欧美另类日韩专区 | 国产高中生第一次完整版 | 亚洲亚洲激情另类自拍 | 免费看男和女污污污的网站免费app | 中文字幕无码精品白丝袜 | 波多野结衣aⅴ在线播放 | 中文字幕一区二区三区日韩网 | 99久久久国产一区二区三区 | 亚洲一成av人先乱码午夜 | 91最新网址国产在线观看 | 精品国产第一区二区 | 亚洲丰满少妇Á三级级毛片 | 91最新网址国产在线观看 | 可以直接看的av网址站 | 国产欧美精品久久久久久TV | 人妻少妇HEYZO无码专区 | 扒开双腿疯狂进出爽爽爽视频免费 | 综合久久久久久中文字幕 | 在线播放偷拍一区精品 | 手机在线播放亚洲日韩欧美 | 无码字幕无码精品无码 | 亚洲欧洲精品免费视频在线 | 欧美二区免费精品 | 色欲网在线观看 | 511影院韩国理论片在线观看 | 亚洲天堂欧美视频在线 | 亚洲AV成人永久网站www在线 | 亚洲精品国产suv一区 | 国产毛片农村妇女系列 | 婷婷综合久久狠狠色99H | 亚洲日韩一区二区爱爱 | 婷婷激情六月国产精品久久 | 亚洲午夜久久久影院伊人 | 中文字幕中文字幕在线网 | 亞洲歐美日韓在線不卡中文 | 人人想人人人爽人人叫在野外 | 久久丝袜国产视频 | 日本另类αv欧美另类aⅴ综合 | 国产真实自在自线免费精品 | 成人在线中文字幕在线播放 | 精品成人18视频 | 久久综合九色综合88网站 | 草中文字幕在线观看 | 亚洲精品乱码久久久久久97 | 亚洲一区二区三区电影网 | 免费观看亚洲黄色大片 | 国产精品午夜系列 | 惠民福利亚洲一区二区不卡在线观看 | 成人资源在线不卡秒播视频 | 亚洲婷婷一区二区三区av | 国产又黄又粗又猛又爽视频 | 麻豆视频污版app下载免费 | 精品亚洲成αv人在线观看 | 国产精品一区二区免费久久 | jizz在线观看免费视频 | 欧美激情人成日本在线视频 | 九九九好热在线 | 欧美日韩在线一区的在线直播平台 | 五月丁香合缴情在线看 | 99re视频综合在线播放 | 色黄啪啪网18勿进 | 一级黄aaa天天干用力干 | 亚洲国产欧美在线一区二区三区 | 中文字幕中日韩欧美一区 | 免费看日本999视频网站 | 強暴人妻hd中文字幕电影 | 亚洲AV日韩AV国内 | 亚洲精品欧美综合二区中字观看 | 四虎永久在线精品2022 | 五月天色婷婷影院久久久 | 亚洲一级黄色av | 成人无码辣文视频 | 国产97公开成人免费视频 | 五月丁香欧美综合久久久 | 久久影国产精品 | 18禁成人网站免费观看韩国 | 国产无遮挡又黄又爽高潮 | 国产精品v欧美精品v日韩精品青青 | 亚洲精品乱码线路中文字幕 | 亚洲综合中文字幕久久网址 | 天堂网在线最新版www资源 | 中文字幕熟女一区二区三区 | 日本一区二区三区一级片 | 日韩无码精品中文字幕 | 欧洲一区无码精品色6我 | 羞羞动漫美女的胸被狂揉扒开 | 成人午夜网址 | 香蕉超碰亚洲国产区中文 | 日韩专区一区二区无人区 | 亚洲一二三四区999 | 丁香五月天婷婷激情91精品免费 | 国产成人精品电影在线观看 | 亚洲AV综合AⅤ一区二区三区 | 网友分享一本久久A久久精品综合心得 | 美女被操在线免费网站 | 欧美成免费一区二区三区 | 国产一区精品3D动漫在线 | 亚洲av综合日韩精品 | 国产精品免费不卡视频 | 国产无遮掩裸体免费网站 | 精品推荐视频一区中文字幕 | 伊人直播色版app官网版安卓下载 | 字幕网资源yellow在线观看 | 欧美自慰AAA黄色片 | 后进极品圆润翘臀在线观看αv | 大地资源网在线观看免费高清观看 | 久草最新视频免费在线观看 | 欧美亚洲性爱综合 | 亚洲男人av资源站 | 日本精品视频亚洲 | 欧美亚洲精品国产字幕在线观看 | 亚洲制服卡通动漫丝袜 | 小视频在线观看免费 | 日韩成人在线资源 | 午夜理论片影院第九电影院 | 亚洲欧美国产精品久久久久久久 | 爽爽爽精品一区二区三区亚洲熟女 | 国产电影白丝袜在线观看 | 亚洲妇女成片一卡二卡三卡观看 | 在线看美女网站第一区2区 | 亚洲二区三区在星空传媒 | 国产日韩欧美精品影片 | 尤物视频 中文字幕 | 国产性行为视频在线观看 | 成人夜视频在线观看免费 | 亚洲欧美日韩狂野精品 | 亚洲专区 精品久久 | 亚洲日韩制服国产āV | 国产精品v日韩精品v欧洲精品 | 国产精品久久久鸭va | 能随意看女生部位的漫画软件 | 福利成年短视频 | 日本www一区在线看 | 熟女一区二区三区免费 | 天天视频国产97二区 | 国产做a爱视频免费无遮挡 | 午夜精品一区二区网站成人 | 3d动漫h在线观看网站蜜芽 | 午夜亚洲精品国产乱码久久久人妻 | 久久精品免费网络 | 欧美日韩国产动漫一区视频 | 日韩欧美一二区 | 两女一男三p做爰电影 | 极品少妇福利午夜电影 | 热久久最新地址免费看 | 熟女一区二区三区免费 | 中文国产亚洲被窝AV | 91香蕉视频网站大全 | 欧美精品一级高清手机在线 | 好吊视频一区二区三区免费 | 玩弄日本白嫩少妇videos | cos亚洲日韩在线视频国产 | 乱码中文字幕一区二区三区 | 四虎永久在线精品2022 | 18禁成人网站免费观看韩国 | 一个人免费观看的www在线观看 | 免费看国产精品日日摸 | 视频在线免费观看亚洲 | 在线观看的免费无遮挡日本 | 亚洲国产精品1234区 | 欧美激情人成日本在线视频欧美精品亚洲 | yellow字幕中文在线观看 | 国产成人麻豆tv在线播放 | 免费国产一区二区在线观看 | 亚洲AV无码精品久久狠狠少妇 | 综合自拍制服欧美日韩亚洲区 | 丁香五月天婷婷激情91精品免费 | 久久久久无码网站 | 國產精品久久國產三級國 | 国产午夜福利精品片久久 | 欧洲一区无码精品色6我 | 丰满少妇无码激情视频 | 欧美精品亚洲精品日韩专区久久久五月 | 日韩亚洲欧美一区二区 | 女教师の爆乳BD在线观看 | 亚洲日本欧美在线观看 | 最近2019免费中文字幕6 | 亚洲国产成人性大片在线播放 | 欧美成人精品网站 | 国产欧美精品久久久久久TV | 日韩av福利免费在线观看 | 五月丁香合缴情在线看 | 91国语对白国产刺激综合 | 99爱在线精品视频免费观看9 | 中文字幕一区二区三区无码专区 | 在线天天综合网视频 | 亚洲另类视频图片小说 | 亚洲区 欧美区 日韩区 | 深夜国产精品视频一区 | 一级黄色片一区二区 | 亚洲乱码中文字幕心综合 | 色AV综合AV无码AⅤ老妇人 | 人人超碰人人 | 亚洲伊人五月丁香激情 | 亚洲无线观看国产高 | 亞洲精品自拍aⅴ在線 | 色综合久久久久综合一小说 | 亚洲一区二区三区电影网 | 美女图片+玉足+黑丝 | 亚洲乱码a乱码国产 | 亚洲色大18成人网站WWW在线播放 | 亚洲高清美女做性视频 | 亚洲中文字幕久久电影 | 奇米777米奇影视狠狠 | 亚洲国内精品自在自线无广告 | 国产剧情黄页在线观看 | 色AV综合AV无码AⅤ老妇人 | 成人免费无码ä毛片 | 午夜亚洲精品国产乱码久久久人妻 | 真人做爰到高潮视频18禁 | 女人被男人躁得好爽免费视频免费 | 舌头伸进去添的我好爽高潮电影 | 扑克牌生产视频又疼又叫的网站 | 精品久久AⅤ一区 | 中文字幕乱码日韩欧美 | 久久久久国产综合精品二区 | 久久久欧洲熟妇熟女 | 亚洲 欧美 制服 丝腿 | 日本卡一卡二卡三卡四免费高清 | 手机看片1042欧美日韩你懂的 | 亚洲欧美久久网站 | 久久夜色精品国产噜噜亚洲a∨ | 国产成人免费片在线观看网站 | 97国产自在现线免费视频 | 久久99精品久久久噜噜最新章节 | 国产男女AV情侣啪啪夫妻 | 在线观看免费国产成人软件 | 欧美zozo另类特级 | 三级国产精品久久久 | 在线免费观看国产不卡av | 欧美系列精品亚洲v在线观看 | 这里只有免费视频 | 国产精品成人一区二区在线观看 | 69堂最新啪啪网址 | 日韩专区一区二区无人区 | 久久国产亚洲精品88 | 欧美日韩综合一区二区三区色 | 亚洲综合av一二三不卡 | 久久99热精品国产亚洲 | 天天操天天弄 | 自拍视频国产免费 | 看到了就来爽爽吧国产午夜福利A 视频 | 亚洲一区不卡在线导航 | 亚洲高清情侣网站 | 成年男女免费视频观看性 | 亚洲无线观看国产精品 | yellow字幕中文在线观看 | 欧美黄色一区二区日本 | 欧美国产综合亚洲91 | 黑人玩弄人妻一区二区三区a | 亚洲国产精品久久人人爱 | 日韩欧美日本久久综合 | 色噜噜狠狠色综合日日免费 | 99久久伊人一区二区久久久精品 | 国产精品一区二区性色aⅤ | 亚洲A无码精品一区二区三区 | 亚洲av综合社区 | 亚洲成年人网站在线观看 | 亚洲中文字幕精品久久久久 | 伊人狠狠色丁香婷婷综合动态图 | 天天看高清无码一区二区三区 | 一个人免费观看的www视频 | 亚洲综合精品一区二区在线 | 欧美激情aa一区二区三区 | 国产91变态在线观看 | 水蜜桃视频观看日韩 | 中文天堂资源在线www | 成人免费在线视频观看 | 国产成人综合欧美亚洲小说 | 成人一区二区精品在线 | 久久婷婷五月综合中文字幕 | 手机看片1042欧美日韩你懂的 | 国产精品免费大片久久久国产一区二区三区 | 年轻人免费视频中国 | 欧美日韩性感尤物在线 | 久久精品国产在热亚洲完整版 | 欧美亚洲精品国产字幕在线观看 | 在线看片免费观看视频网址 | 国产大全小草影院视频免费播放下载 | 久久精品免费网络 | 一级特黄日本免费大片 | 亚洲人人夜夜操人人爽 | 1024手机在线观看你懂的 | 国产成人精品日本亚洲语音2 | 欧美一片二片午夜福利在线快 | 国产精品免费大片久久久国产一区二区三区 | 手机在线观看精品国产片 | 亚洲第一日韩AV综合网 | 中文字幕一区二区无码专区 | 日韩欧美国产一区二区三区四区 | 亚洲韩国日本欧美视频 | 国产精品成人一区二区在线观看 | 华丽的外出在线观看整板 | 中文字幕中文字幕在线网 | 在线天天看片视频免费观看m | 日韩精品中文字幕无人区二 | 蜜桃欧美精品成人A在线观看 | 自拍 亚洲 欧美 老师 丝袜 | 好男人神马www在线视频 | 久久久精品一区二区视频 | 92久久精品一区二区 | 天天看高清无码一区二区三区 | 欧美精品V国产精品V日韩精 | 亚洲一区二区三区香蕉在线观看 | 一级电影在线播放 | 亚洲视色在线视频免费 | 久久久久亚洲AV成人片少妇 | 亚洲欧洲中文日韩成人网 | 性色αv蜜臀αⅤ色欲αV | 精品一区二区三区简爱av | 可以看女生隐私的软件 | 国产又黄又粗又长又猛 | 亚洲国产成人av在线app | 精品中文欧美少妇 | 亚洲欧美熟女 | 中文字幕在线中文乱码高清 | 99夜色精品国产亚洲 | 天堂亚洲欧美日韩一区二区 | 俄罗斯一级成人毛片 | 歐美亞洲國產激情一區二區 | 深夜成人福利APP | 在线观看国产精品日韩av | 日韩不卡av中文字幕 | 天天综合网日韩电影 | 欧美专区在线播放18禁 | 亚洲成av人片一区二区在线观看 | 日本三區四區免費高清不卡 | 欧美zozo另类特级 | 日本精品激情乱一区二区 | 污视频网站在线观看免费 | 亚洲欧美国产精品久久久久久久 | 久久99这里只有精品17 | 人人爽天天摸天天碰天天添 | 黑人久久久精品人妻av | 国产麻豆精品久久传媒 | 午夜av旡码高清在线观看 | 福利热映电影之家在线观看免费版全集高清 | 歐美綜合網亞洲綜合網 | 免费亚洲欧美日韩久久精品 | 国产一区精品3D动漫在线 | 2019中文字幕久久幕 | 日本xxxx一区二区 | 成年午夜免费ÄⅤ在线观看 | 亚洲成AV人片一区二区小说 | 蝴蝶视频app污官方版 | 精品国产另类一区二区 | 乱码卡一卡二新区欧美 | 男女无遮挡高清免费视频网站 | 动漫美女被爆操久久久 | 91精品国产一区二区三区左线 | 了解最新国产日韩精品一区二区在线观看播放 | 久久99精品久久噜噜6 | 中文成人精品久久 | 在线永久免费AV网站免费观看 | 亚洲欧美精品中字久久99 | 日韩精品中文字幕无人区二 | 亚洲美女国产精品久久麻豆 | 国产又粗又大又猛又爽又黄的视频 | 手机看片国产日韩久久18 | 人妻被强aV系列 | 好好的曰com视频在线 | 97人妻中文在线播放 | 亚洲欧洲日韩国产av | 俺来俺去视频在线观看 | 中文字幕在线不卡视频蜜乳 | 尤物视频网页大全 | 国产在视频2019不卡 | 桃子视频在线观看WWW黄 | 亚洲自产一区二区 | 欧美精品激情在线观看最新版视频 | 日本精品视频在线播放 | 最新国产福利片在线 | 在线看片免费观看视频网址 | 免费国产一区二区在线观看 | 精品国产一区二区三区蜜臂 | 亚洲av永久无码精品一百度 | 最新国产国产人免费视频视频 | 晚上视频网站在线观看 | 欧美女优在线观看 | 成人免费毛片视频APP | 成年丰满熟妇午夜免费费视频 | 亚洲妇人成熟性成熟图片高清 | 99人妻少妇精品无码 | 亚洲综合av一二三不卡 | 四虎最新在线免费观看 | 成人免费无码ä毛片 | 天堂网在线最新版www资源网 | 爽爽爽精品一区二区三区亚洲熟女 | 亚洲色婷婷在线天天看天天狠 | 免费视频在线色中文 | 国产精品成人ãv一区二区色综合 | 尤物视频 中文字幕 | 免費國產成人高清在線直播 | 任你干任你日在线精品视频 | 国产精品v欧美精品v日韩精品青青 | 欧美一级亚洲精品91 | 国产精品一区二区免费久久 | 国产91变态在线观看 | 天天打天天鲁天天爽在线观看 | 成人在线免费观看视频 | 国产成人综合影院在线 | 色多多app在线观看 | 最近中文字幕高清中文字幕第一 | 国产又黄又粗又长又猛 | 亚洲AV无码一区二区写真 | 欧美日本高清不卡 | 亚洲国产综合专区在线观看 | 国产精品丝袜久久久久久ä | 好男人视频在线观看免费 | 中文字幕亚洲乱码 | 蜜桃视频在线观看网站 | 国产高清中文字幕在线 | 中文字字幕在线不卡 | 国产美女主播在线观看网 | 中文字幕不卡一区每日更新 | 国产精品初高中小美女 | 亚洲综合av色婷婷国产野外 | 亚洲欧美日韩aⅴ一区二区三区 | 丁香五月婷婷激情四射 | 性色αv蜜臀αⅤ色欲αV | 日本亚洲欧美视频免费观看 | 国产交换配乱婬视频免费99 | 国产麻豆精品久久传媒 | 任你干任你日在线精品视频 | 欧美午夜福利网站 | 脫了動漫美女內褲猛烈進入gif | 中文字幕在线中文乱码高清 | 午夜精品久久久久久久2023 | 日韩丝袜福利视频 | 亚洲AV无码乱码无线观看 | 女人荫蒂让男人添视频 | 免费看日本999视频网站 | 中文字幕无码精品白丝袜 | 惠民福利国产三级视频在线观看视 | 精品国产粉嫩一区二区三区 | 美女图片+玉足+黑丝 | 两个人免费完整在线观看直播 | 亚洲精品国产aV成拍色拍婷 | 国产高清自在自线99 | 国产又粗又大又黑色网视频播放 | 国产精品久久婷婷六月丁香是一个直播平台 | yellow字幕中文在线观看 | 亚洲一区欧美二区中文字幕 | 日本欧美三级成人精品 | 爆乳欧美精品久久久 | 欧美亚洲动漫一区二区在想线 | 草草影院ccyy國產日本歐美 | 日本不卡一二视频 | 精品国模无码一区二区三区 | 日本www一区在线看 | 亚洲图片 在线视频 | 美女图片+玉足+黑丝 | 日韩一品欧美一区 | 91精品人妻系列无码人妻 | 国产做a爱视频免费无遮挡 | 了解最新国产日韩精品一区二区在线观看播放 | 欧美精品一区三区中文字幕 | 欧美日韩小视频 | 1000部拍拍拍18勿入免费视频下载 | 香蕉在线蕉久在线 | 97亚洲一区二区三区 | 欧美亚洲日韩国产一级在a级国产日韩 | BT√天堂资源种子在线官网 | 手机在线播放亚洲日韩欧美 | 亚洲高清美女做性视频 | 2021天天夜夜爽在国产 | 做爱视频免费观看网站 | 人妻少妇HEYZO无码专区 | 欧美熟妇情趣办公室XXⅩ视频 | 好好的曰com视频在线 | 国产免费一区2区3区4区 | 最近中文字幕电影大全免费版 | 中文字幕一区二区三区精品日韩 | 华丽的外出在线观看整板 | 亚洲高清情侣网站 | 欧美99久久精品乱码影视 | 久久aV一区二区三区乱码 | 九草在线视频观看香蕉不卡 | 女人性高朝床叫视频午夜 | 欧美巨大性爽欧美精品 | 欧美成人午夜在线观看 | 9l精品人妻中文字幕色欲 | 黄色不卡电影一区二区三区 | 日韩永久免费精品视频 | 亚洲AV成人无遮挡网站在线观看 | 大地资源网在线观看免费高清观看 | 美女视频免费观看18网站 | 91国内揄拍国内精品对白免费 | 91香蕉视频网站大全 | 精品久久久久久妇女自慰喷水 | 成人亚洲天堂东京热 | 日韩偷拍天堂高清 | 精品视频在线观看视频免费视频 | 日韩欧美日本久久综合 | 精品伊人久久综合99综合网 | 宅男在线影院 | 在线观看亚洲综合一区 | 成人免费在线视频观看 | 国产激动情五月天 | 任你躁在线精品视频m3u8 | 亚洲国产精品成人影片久久 | 人妻少妇HEYZO无码专区 | 美女自拍日韩视频在线观看 | 亚洲欧美激情视频日韩国产 | 中文字幕一区二区中文 | 美女裸体免费观看国产 | 一本久道亚洲综合中文无码 | 另类重口特殊AV无码 | 亚洲欧美日韩在线播放 | 久久婷婷五月综合中文字幕 | 亚洲欧美激情视频日韩国产 | 欧美日韩生活片 | 国产亚洲一区二区在线软件 | 亚洲日韩欧美高清香蕉区在线观看 | 在线亚洲精品A | 国产欧美亚洲第一区二区 | 国产又黄又粗又长又猛 | 茄子视频国产在线观看 | 真人做爰到高潮视频18禁 | 国产91免费精品电影 | 精品中文欧美少妇 | 亚洲AV成人无遮挡网站在线观看 | 日本高清一二区免费 | 最近中文字幕MV免费高清在线 | 国产高清精品免费精2021 | 亚洲一区二区三区日韩av | 久久99这里只有精品17 | 精品人妻系列无码一区二区 | 成人免费网站又大又黄又粗 | 蝴蝶视频app污官方版 | 国产性行为视频在线观看 | 办公室丝袜激情无码播放 | 超碰在线免费三级片 | 中文字幕乱码日韩欧美 | 大胆欧美熟妇xxxx | 亚洲中文字幕无码中文字无摸 | 亚洲欧美日韩狂野精品 | 亚洲午夜精品是一款非常热门的直播平台 | 午夜精品久久久久久影视麻豆 | 日韩永久免费精品视频 | 国产激动情五月天 | 国产亚洲日产经典 | 欧美日韩一级二级三级 | 在线高H免费视频 | 欧美黄色一区二区日本 | 在线免费观看国产不卡av | 欧美激情在线播放第一页 | 日韩精品卡一卡二卡三不卡在线视频 | 亚洲国产精品中文字幕久久 | 欧美成人一区二区精品国产 | 瑟瑟视频在线免费观看 | 在线观看的免费无遮挡日本 | 91欧洲无码精品a码无人区 | 日韩激情在线观看91 | 福利热映电影之家在线观看免费版全集高清 | 亚洲成年人网站在线观看 | 日本免费无遮挡吸乳视频中文字幕 | 久久久香港免费视频 | 亚洲精品乱码久久久久久97 | 亚洲成人av网址在线观看 | 91国语对白国产刺激综合 | 高清无码中文字αⅴ电影 | 国产成人综合美在线 | 2019色久综合在线观看 | xx91麻豆亚洲熟女少妇 | HEYZO中文字幕人妻无码 | 亚洲欧洲综合影院 | 国产精品v欧美精品v日韩精品青青 | 国产精品v欧美精品v日韩精品青青 | 亚洲成av人片一区二区在线观看 | 四虎精品自拍视频网站 | 亞洲91在線視頻 | 五月丁香合缴情在线看 | 伊人直播色版app官网版安卓下载 | 亚洲精品中文字幕乱码4区 | 999精品色在线播放 | 又粗又黄又爽的国产视频 | 亞洲歐美日韓在線不卡中文 | 全国男人天堂网在线观看 | 亚洲中文字幕美腿 | 亚洲中文字幕琪琪在线 | 抖音探探成色软件入口 | 国产人妻久久精品二区三区特 | 99在线一本大道观看 | 2023不卡在线国产日韩不卡 | 亚洲中文欧美韩日 | 青青草日韩视频在线观看 | 99re在线观看视频 | 精品无人乱码区1区2区3区 | 琪琪网最新伦永久观看2019 | 国产精品日批视频免费观看 | 亚洲日韩精品综合在线1 | 色婷婷综合缴情综图 | 國產菊爆視頻在線觀看 | 精品无熟妇人妻久久中文字幕 | 日韩特色特黄在线播放 | 国产精品普通话对白精品 | 福利热映电影之家在线观看免费版全集高清 | 做爱视频免费观看网站 | 91丝袜在线视频 | 迅雷种子+av无码 | 欧美午夜A∨大片久久 | 亚州春色校园另类 | 亚洲国内精品自在自线无广告 | 无码免费自拍高清 | 欧美V日韩V亚洲V在线观看 | 亚洲AV日韩AV国内 | 国产午夜免费羞羞一区二区 | 探花视频手机APP无限次数下载 | 亚洲91一区二区三区 | 国产自在线观看视频 | 深夜成人福利APP | 日本在线 一区二区 | 羞羞动漫美女的胸被狂揉扒开 | 中文字幕一區二區三區日韓精品 | AV熟女国产一区二区三区 | 国产在视频2019不卡 | 99在线一本大道观看 | 日本一级A片中文字幕视频 | 日韩欧美精品亚洲一级在线 | 亚洲精品欧美综合二区中字观看 | 全部古装a级在线播放 | 免费人成在线观看网站视频 | 亚洲综合中文字幕久久网址 | 天堂亚洲欧美日韩一区二区 | 久久99这里只有精品17 | 免费国产调教视频在线观看 | 深夜污污污免费视频福利 | 亚洲成av人片一区二区在线观看 | 國產成+人歐美+綜合在線觀看 | 91丝袜在线视频 | 不戴胸罩的老师中文字幕 | 国产在线方视频在线观看 | 国产亚洲欧美福利 | 亚洲欧美熟女 | 中文乱码字字幕在线国语 | h小视频在线观看网 | 亚洲第一日韩AV综合网 | 日韩激情中文字幕免费视频 | 欧美国产中文动漫日韩欧美在线 | 麻豆免费高清国产视频 | 精选观看中文字幕高清无码 | 91国语对白国产刺激综合 | 2019色久综合在线观看 | 黄色香蕉视频91 | 99re成人精品视频免费看 | 蕾丝视频污污污 | 亞洲伊人久久綜合 | 女人荫蒂让男人添视频 | 成年视频人免费网站动漫在线 | 免费视频在线色中文 | 69影院在线观看 | 亚洲综合狠狠99婷婷 | 亚洲美女国产精品久久麻豆 | 正在播放怡春院国产在线视频 | 人与嘼AV免费3D | 成人AV小姐网站 | 精品国产另类一区二区 | 亚洲国产欧美在线一区二区三区 | 国产成人综合欧美亚洲小说 | 免费人成在线观看播放国产 | 国产男人的天堂av区 | 亚洲欧美人成电影在线观看 | (愛妃)亚洲国产成人精品久久综合区 | 亚洲美女按摩性色生活视频 | 国产免费一区2区3区4区 | 扑克牌生产视频又疼又叫的网站 | 亚洲十八禁毛片在线 | av在线在线一卡 | 国产毛片农村妇女系列 | 國產午夜久久精品 | 99re视频综合在线播放 | 亚洲AV成人永久网站www在线 | 在线观看欧美综合自拍 | 强奷乱码中文字幕在线 | 野花日本免费完整版高清版 | 国产免费丝袜阿V视频 | 亚洲日韩欧美性爽视频免费 | 99RE免费99RE在线视频 | 九草在线视频观看香蕉不卡 | 国产亚洲色福视频 | 色婷婷一区二区三区777 | 亚洲精品乱码线路中文字幕 | 丰满熟女高潮视频国产 | 性做爰高清视频在线观看视频 | 欧美蓝光电影天堂全部免费观看 | 高清日韩网站 | 欧美久久精品一c片一级 | 在线观看国产爆草网站 | 亚洲欧美精品中文三区 | 国产97电影中文 | 91日韩欧美一级 | 欧美日韩69视频 | ai造梦人脸替换明星专区 | 久草手机在线观看视频 | 亚洲色大18成人网站WWW在线播放 | 麻豆免费高清国产视频 | 四虎永久无码免费 | 骚女被肏网站免费观看 | 欧美日韩一级二级三级 | 扑克牌生产视频又疼又叫的网站 | 亚洲欧洲日韩一区综合在线 | 中文字幕一级网址在线视频最新 | 91精品国产乱码久久久久 | 电影午夜日韩国产污 | 色婷婷综合缴情综图 | 成人亚洲天堂东京热 | 亚洲综合av色婷婷国产野外 | 久久影院这里都是精品视频 | 欧美亚洲成人精品 | 香蕉视频一级 | 亚洲欧洲日韩国产av | 精品久久久久久久一区二区伦理 | 麻豆精产国品一二三产区区别免费 | 无码åv福利在线影院 | 精品国产一区二区三区岳 | 亚洲高清美女做性视频 | 99RE免费99RE在线视频 | 麻app豆传媒视频 | 蜜桃欧美精品成人A在线观看 | 精品成人免費自拍視頻 | 精品动态视频剧情在线播放 | 国产麻豆成人免费 | 国产精品无遮挡免费观看 | 日本又色又爽又黄的网站在线观看 | 久久99精品亚洲热综合 | 欧美日韩在线观看三区 | 免费成人黄页在线观看国产 | 国产精品久久婷婷六月丁香是一个直播平台 | 手机在线播放亚洲日韩欧美 | 国产这里有精品视频 | 最新亚洲日韩äV一区二区 | 无码r级福利无码 | 日本天堂网在线视频 | 国内一区二区三级欧美射射 | 日本又色又爽又黄的网站在线观看 | 日韩欧美亚无a码高清在线播放 | 国产白色视视频在线观看 | 国产精品久久婷婷六月丁香是一个直播平台 | 又粗又黄又爽的国产视频 | 亚洲激情男人天堂av网 | 欧美激情一区二区亚洲专区 | 最近最新中文字幕大全高清8 | 四虎海外在线永久免费看 | 午夜精品成人免费视频 | 国产日韩在线不卡一区二区视频 | 免费视频在线色中文 | 一级黄色片一区二区 | 小说 图片 视频一区 | 亚洲Aⅴ无码一区二区三区人 | 国产精品一区二区免费久久 | 国产无套粉嫩在线观看 | 98色花堂在线视频区免费 | 2020日本www网站不卡 | 日韩综合不卡视频 | 亚洲午夜久久久影院伊人 | 欧洲亚洲精品免费视频 | 亚洲中文字幕无码中文字无摸 | 大胆欧美熟妇xxxx | 国产午夜福利av在线麻豆 | 99夜色精品国产亚洲 | 国内精品无码AⅤ一区二区三区 | 久久露脸国产精品探花牛仔裤 | 亚洲第一AV片在线观看 | 精品国产高清一区二区三区人妖 | 日韩永久免费精品视频 | 国产成人综合网在线观看 | 爱我久久精品国产av | 亚洲日韩av妓女不卡一区 | 67194熟妇人妻欧美日韩百度 | 国内精品玖玖玖玖电影院 | 任你躁在线精品视频m3u8 | 亚洲av永久在线观看更新 | 中文字幕乱码中文乱码二区 | 色综合视频一区中文字幕 | 天天看高清无码一区二区三区 | 亚洲精品国产性色xxxx | 精品视频在线观看视频免费视频 | 色婷婷一区二区三区777 | 亚洲欧美激情在线观看一区 | 在线视频+公车痴汉 | 中文字幕无码不卡顿视频 | 四虎海外在线永久免费看 | 日本妈妈在线观看中文字幕 | 国内精品嫩草影院88 | 亚洲日韩欧美性爽视频免费 | 日韩av五月天在线播放 | 极品少妇福利午夜电影 | 強暴人妻hd中文字幕电影 | 看到了就来爽爽吧国产午夜福利A 视频 | 91成人福利小导航 | 华丽的外出在线观看整板 | 韩国女主播精品视频网站 | 免费美女裸妆视频软件下载 | 久久免费碰免费视频 | 午夜大陆理论免费观看 | xx91麻豆亚洲熟女少妇 | 福利热映电影之家在线观看免费版全集高清 | 小黄文视频软件免费 | 精品久久久久久噜噜无码 | 麻豆大鸡把自慰大全在线观看 | 精品国产一区二区三区岳 | 精品中文欧美少妇 | 亚洲一区欧美二区中文字幕 | 日产精品码2码三码四码区久久亚洲AV成人无码 | 亚洲网站av免费观看younv能看网站 | 亚洲精品乱码久久久久久97 | 色黄啪啪网18勿进 | 婷婷激情六月国产精品久久 | 一级又爽又黄视频 | 免费在线宅男精品视频 | 欧美精品V国产精品V日韩精 | 黄色网址网站在线观看 | 国产浮力草草影院ccyy | 亞洲歐美日韓一區高清中文字幕 | 国产热a欧美热a在线视频 | 积积对积积桶永久免费软件 | 日韩精品有码中文字幕在线 | 欧美成人精品网站 | 综合影视中文自拍 | 美女图片+玉足+黑丝 | 久久久久熟女一区二区三区 | 国产国语刺激对白毛片 | 在线免费观看做爱视频 | 无码成人免费全部观看 | 亚洲精品关女久久久 | 亚洲日韩伦理中文字幕在线观看 | 91久久综合一区二区三区桃色 | 免费九九99视频 | 亚洲中文字幕无码一区999 | 成年视频免费观看 | 日本在线中文字幕20页 | 性色av笫一区二区三区 | 国产熟女高潮久久麻豆 | 91最新网址国产在线观看 | 亚洲乱码a乱码国产 | 亚洲精品国产性色xxxx | 人人爽天天摸天天碰天天添 | 日韩精品美女在线观看 | 日韩中文字幕人妻一区二区 | 波多野结衣作品番号 | 网友分享一本久久A久久精品综合心得 | 国产超级a天堂直播在线观看 | 日韩综合不卡视频 | 亚洲国产人午夜在线 | 亚洲国产精品啪啪视频 | 在线高H免费视频 | ai造梦人脸替换明星专区 | 国精产品一区一区三区四区mba | 国产熟女白浆一区二区三区 | 免费美女裸妆视频软件下载 | 亚瑟日韩久久久久 | 日韩不卡av中文字幕 | 国产一区二区久久久久久综合 | 伊人久久久aⅤ老熟妇色 | 国产亚洲男人社区堂在线观看视频 | 欧美日本高清不卡 | 亚洲精品哦人A√ | 91香蕉在线看私人影院 | 双男主真人有车车的软件免费 | 国产成人亚洲日韩欧美电影 | 99国产免线观看九 | 日韩精品美女在线观看 | 色婷婷婷视频一区二区三区 | 日本一卡2卡3卡4卡在线新区 | 国产日韩大香蕉在线视频 | 久久99精品这里精品无码 | 中文字幕日韩欧美人妻 | 亞洲歐美日韓一區高清中文字幕 | 亚洲影院午夜在线观看 | 精品国产一区二区三区蜜臂 | 脫了動漫美女內褲猛烈進入gif | 欧美一区二区三区午夜福利 | 国产成人综合亚洲色婷婷 | 无码åv福利在线影院 | 片多多在线观看视频 | 亚州最大看欧美日韩视频 | 亚洲午夜久久久影院伊人 | 亚洲乱码中文字幕心综合 | 天天精品无码一区 | 日语一本二本三本免费2021 | 脫了動漫美女內褲猛烈進入gif | 最新日韩专区vå无码 | 五月丁香合缴情在线看 | 亚洲欧美日韩狂野精品 | 国产三级亚洲精品 | 韩国av双飞在线观看 | 中文字幕乱码中文乱码二区 | 欧美第一在线播放 | 国精产品一区一区三区四区mba | 亚日韩午夜视频在线观看 | 免费无遮挡18禁网站 | 久久久久亚洲AV无码首页 | 最新日韩专区vå无码 | 国精产品一区一区三区四区mba | 欧美孕交videosfree另类电影 | 精品亚洲永久免费直播 | 日韩 亚洲 制服 欧美 综合 | 99热这里只有精品3 | 鲁鲁射软件免费下载 | 久久婷婷激情综合中文字幕 | 欧美日韩一级二级三级 | 日产乱码在线观看心得 | 亚洲欧洲一级在线播放 | 日产精品码2码三码四码区久久亚洲AV成人无码 | 五月天成人性爱 | 2019中文字幕久久幕 | 中文字幕亚洲乱码 | 国产精品九九在线播放无卡顿 | 适合晚上一个人看b站软件大全 | 久久婷婷激情综合中文字幕 | 久久综合九色综合88网站 | 国产蜜芽香蕉精品久久 | yy6080新视觉午夜一级 | 无码成人午夜福利视频 | 过程网站在线观看黄 | 亚洲国产高清成人 | 香蕉超碰亚洲国产区中文 | 三级午夜理伦三级在线观看国产 | 最近2019年中文字幕大全 | 日韩av影片在线观看 | 日韩欧美国产一区二区三区四区 | 日本在线中文字幕20页 | 欧美二区免费精品 | 国产成人精品久久久欧美日韩亚洲综合区 | 午夜爽爽爽免费视频在线观看 | 国产国产人免费视频成 | 国产在线方视频在线观看 | 69堂最新啪啪网址 | 天堂亚洲欧美日韩一区二区 | 欧美国产成人在线精品观看网站 | 欧美超碰人人人人澡 | 在线天天看片视频免费观看m | 自拍无码精品一区二区三区 | 欧美亚洲另类精品第一页 | 国产白丝jk黑袜喷水视频 | 精品日韩欧美一区二区三区四区 | 99热亚洲色精品国产88 | 亚洲综合色噜噜狠狠网综合 | 爱我久久精品国产av | h羞羞涩涩动漫在线观看 | 日产精品码2码三码四码区久久亚洲AV成人无码 | 欧美激情aa一区二区三区 | 免费观看AAA片在线播放 | 日韩 欧美 动漫 国产 制服 | 国产午夜福利av在线麻豆 | 午夜成人在线观看福利 | 美女裸体免费观看国产 | 手机看片日韩日韩韩 | 国产热a欧美热a在线视频 | 免费国产一区二区在线观看 | 高清少妇久久亚洲 | 特黄特黄毛片18禁 | 国产综合丝袜在线视频 | 欧美性色黄大片欧美40老熟妇 | 久久久久国产综合精品二区 | 亚洲第一AV片在线观看 | 一区二区三区人妻熟妇 | 日本黄色片网址 | 亚洲综合色噜噜狠狠网综合 | 欧美日韩中文人妻一区 | 日韩一级一在线观看视频 | 草莓app官网下载地址 | 久久久精品一区二区视频 | 亚洲字幕在线一区二区三区 | 自拍 亚洲 欧美 老师 丝袜 | 在线观看日本免费A | 中文字幕乱码中文乱码二区 | 国产精品一二二区在线 | 老女人在线精品视频免费 | 又爽又高潮的免费视频在线 | 日韩欧美国产一区二区三区四区 | 日韩在线视频中文字幕一区 | 少妇刺激不卡视频 | 香蕉网在线播放 | 五月天久久久丁香婷婷天堂 | 综合国产影视亚洲 | 管鲍分拣中心官网排行榜最新章节 | 国产成人精品综合久久久久99 | 啊~cao死你个小sao货视频 | 草莓app官网下载地址 | 在线播放欧美日韩成人 | 欧美性XXXXX精品免费播放 | 亚洲日本欧美在线观看 | 日韩激情在线观看91 | 少妇精品三级高清 | 欧美亚洲另类精品第一页 | 成人欧美亚洲电影 | 国产在视频2019不卡 | 日韩精品 电影一区 亚洲 | 精精国产XXXX视频在线www | 中国少妇毛茸茸 | 97超级碰在线观看免费 | 第九午夜福利影院 | 亚洲国产欧美高清 | 午夜福利夫妻电影 | 免费视频在线色中文 | 亚洲国产成人av在线app | 日本免费一区二区三区色香欲86 | 久久97超碰人人 | 91精品国产乱码久久久久 | 91精品人妻系列无码人妻 | 亚洲精品壁纸动态视频设置 | 女人裸体久久久久久久久久久 | 亚洲欧洲国产成人综合一本 | 欧美国产成人在线精品观看网站 | 老司机午夜精品视频观看 | 亚洲av永久无码精品一百度 | 日韩在线视频观看 | 色婷婷国产精品视频一区1 | 欧日韩高清av在线播放 | 国产麻豆精品免费人成网站 | 亚洲精品关女久久久 | 国产性色亚洲AV成人片色在线观看高潮 | 久久久精品国产亚洲精品热6 | 亚洲中文字幕无码一区999 | 在线免费播放一区日本专区 | 日本精品激情乱一区二区 | 任你干精品视频免费 | 欧美日韩小视频 | cos亚洲日韩在线视频国产 | 美国一区二区毛片在线看 | 欧美日韩一区二区视频网址 | 午夜一日本级频 | 日本高清2018色视频日本轻视 | 久久精品国产72精品亚洲 | 成人一区二区精品在线 | 日韩精品有码中文字幕在线 | 五月天久久久丁香婷婷天堂 | 一级电影在线播放 | 天天看高清无码一区二区三区 | 深夜成人福利APP | 国产无人区码卡二卡三卡 | 中文字幕乱码中文乱码二区 | 精品伊人久久综合99综合网 | 在线观看欧美综合自拍 | 色婷婷婷视频一区二区三区 | 无码区毛片蜜桃 | 久久99精品亚洲热综合 | 精品亚洲永久免费直播 | 99热这里只有是精品在线观看 | 亚洲日韩欧美性爽视频免费 | 色噜噜狠狠色综合日日免费 | 动漫美女被爆操久久久 | 亚洲A无码精品一区二区三区 | 最新网手机在线观看最新版а√天堂一区二区三区 | 国产美女主播精品大秀系列 | 午夜福利国产精品久久超碰最新 | 欧美18vivode孕妇交 | 欧洲性开放少妇 | 精品久久久久久久久av | 爆乳欧美精品久久久 | 午夜爽爽爽免费视频在线观看 | 亚洲无码久久精品日韩无码专区 | 深夜视频在线观看一区免费欧美 | 91香蕉app下载无限看 | 亚洲日韩av妓女不卡一区 | 国产精品51麻豆cm传媒在线观看 | 国产精品亚洲丝袜专区 | 免费人成视频在线播放视频 | 亚洲人成小说色在线 | 亚洲 欧美 制服 丝腿 | 暖暖日本社区免费观看 | 91人成免费视频在线观看 | 中文字幕亚洲网址第1页 | 亚洲成a人片77777精品 | 国产无遮挡又黄又爽高潮 | 精品国产一区二区三区岳 | 亚洲91综合在线 | 少妇精品三级日本 | 亚洲伊人五月丁香激情 | 国产午夜免费羞羞一区二区 | 国产成人精品久久久欧美日韩亚洲综合区 | 国产人妻久久精品二区三区特 | 国产精品日批视频免费观看 | 在线免费播放一区日本专区 | 国产无遮掩裸体免费网站 | 麻豆专区无码免费 | 欧美饥渴少妇xxxxx性 | 汇聚最新免费欧美青娱乐在线视频全集 | 国产精品亚洲精品爽爽 | 国产精品v日韩精品v欧洲精品 | china末成年videos强行 | 久久99这里只有精品17 | 欧美亚洲国产视频小说 | 欧美高冷美女h视频一区在线观看 | 午夜福利影院手机在线观看 | 迅雷种子+av无码 | 欧美日韩综合一区二区三区色 | 了解最新99精品欧美一区二区 | 色噜噜噜视频 | 97日韩视频在线一区 | 久99视频精品永久免费 | 亚洲国产福利小电影 | 久久久久熟女一区二区三区 | 成年丰满熟妇午夜免费费视频 | 亚洲影视第一页国产精品 | (愛妃)亚洲国产成人精品久久综合区 | 免费成年人视频国产 | 俺来俺去视频在线观看 | 久久亚洲伊人中字综合精品制服丝袜久久 | 免費國產成人高清在線直播 | 日本在线观看综合精品 | 91亚洲国产成人久久精品蜜臀 | 在线看片免费观看视频网址 | 一级少妇婬片免费观看 | 一个人免费观看的www视频 | 91最新网址国产在线观看 | 欧美性XXXXX精品免费播放 | 国产熟女高潮久久麻豆 | 最近中文字幕电影大全免费版 | 成人亚洲私人影院av | 免费在线观看日韩aⅴ片 | 久久成人综合亚洲精品 | 国产+欧洲+在线观看 | 男人J插进女人P日韩视频 | 欧美精品亚洲精品日韩专区久久久五月 | 年轻人免费视频中国 | 高潮社区51视频在线观看 | 1024手机在线免费看片 | 欧美熟女40一区二区 | 亚洲精品自拍AV在线日韩 | 網友分享亚洲欧美日韩精品在线心得 | 成人AV小姐网站 | 无码字幕无码精品无码 | 国产又黄又粗又猛又爽视频 | 国产一区二区三区成人片在线 | 精东影视传媒文化管理公司 | 久久久亚洲精品国产 | 久久丝袜国产视频 | 性色的免费视频 | 色婷婷欧美日韩一区 | 久久婷婷激情综合中文字幕 | 成人网站在线观看无遮挡免费观看 | 亚洲国产欧美一区二区三区在线 | 黑人猛干亚洲女久久不见网 | 欧美激情肉欲高潮视频 | 亚洲永久精品911 | 无码动漫第一 | 国产高清亚洲精品91 | 日本一区二区三区一级片 | 无码免费自拍高清 | 欧美色激情在线二区 | 亚洲久一区二区三区 | 美女光屁股扒开腿让男人桶爽免费 | 亚洲国产av大全一区 | 天堂网www在线最新版 | 亚洲自拍网视频在线 | 亚洲成Av人片在线观看不卡 | 亚洲av中文自拍 | 色黄啪啪网18勿进 | 91香蕉app下载无限看 | 国产成人精品久久久欧美日韩亚洲综合区 | 91精品国产麻豆福利在钱 | 亚洲国产小说一区二区 | 91亚洲精华国内精华精华液 | 国产精品久久久鸭va | 亚洲婷婷一区二区三区av | 91精品国产一区二区三区左线 | 色香欲天天影视久久综合网 | 国产午夜福利在线观看片97 | 欧美亚洲日韩国产一级在a级国产日韩 | 亞洲綜合高清精品導航網址 | 5g在线婷婷综合网 | 久久精品国产亚洲Äv日韩精品 | 少妇被又粗又大猛烈进出播放 | 国产精品一区二区免费久久 | 免费看片的影院 | 久久精品午夜国产 | 国产精品综合AV一区二区首页 | 中文在线√天堂 | 男女天堂av资源网 | 91成人福利小导航 | 日本高清不卡二卡三区 | 茄子视频国产在线观看 | 97超级碰在线观看免费 | 亚洲欧洲国产成人综合一本 | 国产午夜福利av在线麻豆 | 在线观看2828理论片 | 伊人狠狠色丁香婷婷综合动态图 | 人妻被强aV系列 | 野花社区www在线资源 | 两男吮着她的花蒂尿在线观看 | 神马老子不卡视频在线 | 久久精品国产77777蜜臀绿帽 | 成年人在线免费看 | 精品日韩欧美一区二区三区四区 | 日本国模视频在线观看播放 | 亚洲国产成人性大片在线播放 | 七月丁香国产欧美一区 | 亚洲激情视频在线观看 | 2023不卡在线国产日韩不卡 | 在线观看亚洲综合一区 | 日韩欧美不卡一卡二卡3卡四卡2024免费 | 亚洲色婷婷在线天天看天天狠 | a亚洲电影中文字幕在线 | 边爱边做在线观看免费视频 | 亚洲国产精品+嫩草影院+久久 | 免费不卡视频在线播放 | 一区二区视屏 | 欧日韩高清av在线播放 | 欧美国产成人在线精品观看网站 | 东北熟女脏话对白 | 色婷婷婷视频一区二区三区 | 欧美日韩在线观看三区 | 精品国产乱码久久久久久强 | 天天噜噜日日噜噜久久综合网 | AV熟女国产一区二区三区 | 日本中文字幕在线二区 | 国产熟女一区二区丰满观看熟女 | 怡红院免费在线视频 | 国产福利自产拍在线观看 | 亚洲图片 在线视频 | 最新网手机在线观看最新版а√天堂一区二区三区 | 女生说痛了男生越里寨 | 老司机午夜精品视频观看 | 最近最新中文字幕大全高清8 | 亚洲欧美激情在线观看一区 | 精选观看中文字幕高清无码 | 精东影视传媒文化管理公司 | 亚洲av影院免费观看 | 强奷乱码中文字幕在线 | 国产三级毛片普通话 | 最新中文一区二区在线播放 | 亚洲AV无码一区二区写真 | 一级做a爰片视频在线观看 | 国产在线视频手机观看 | 能随意看女生部位的漫画软件 | 亚洲精品国产成人性色 | 精品精品男人的天堂国产 | 欧洲性开放少妇 | 最近中文字幕电影大全免费版 | 污污亚洲视频视频 | 国产精品v日韩精品v欧洲精品 | 国产精品一一老牛影视视 | yellow字幕中文在线观看 | 交换配乱婬小说阅读 | 欧美专区在线播放18禁 | 67194熟妇人妻欧美日韩百度 | 日韓精品中文字幕久久 | 国产亚洲精品美女视频噜噜噜 | gogo午夜高清免费摄影 | 色噜噜国产亚洲精品 | 欧美嗯啊视频在线观看 | 国产无遮掩裸体免费网站 | aaa国产欧美新区不卡福利 | 中文字幕第88页在线 | 三级国产精品久久久 | 亚洲一区二区三区日韩av | 欧美精品V国产精品V日韩精 | 亚洲精品456免费播放 | 日韩亚洲精品全部在线观看 | 1000部拍拍拍18勿入免费视频下载 | 欧美国产中文动漫日韩欧美在线 | 亚洲日韩欧美高清香蕉区在线观看 | 国产无人区码卡二卡三卡 | 久久精品中文字幕在线观看 | 国产熟女白浆一区二区三区 | 99久久国产成人亚洲综合a∨ | 少妇精品三级高清 | 麻豆免费高清国产视频 | 成人无码辣文视频 | 国产精品丝袜久久久久久ä | 久久aV一区二区三区乱码 | 精品一区二区三区简爱av | 92久久精品一区二区 | 超碰超碰人人澡人人添 | 亚洲欧洲另类在线观看 | 91香蕉视频网站大全 | 后进极品圆润翘臀在线观看αv | 在线观看日本免费A | 欧美成人一区二区精品国产 | 国产在线观看免费九九九九 | 中文字幕不卡一区每日更新 | 国产精品未满十八禁止在线观看 | 好男人视频在线观看免费 | 91国语对白国产刺激综合 | 手机看片国产日韩久久18 | 日本你懂得的在线视频网站 | 中日韩美女三级不卡视频 | 色综合久久久久综合一小说 | 年轻人免费视频中国 | 最近最新中文字幕大全高清8 | 亚洲天堂在线不卡 | 免费三级毛片激情高朝 | 亚洲综合在线观国产看 | 亚洲午夜国产一级 | 久久久久久久国产精品 | 中文字幕亚洲综合欧美成人 | 99久久伊人一区二区久久久精品 | 亚洲妇人成熟性成熟图片高清 | 天堂亚洲久色一线v | 色网站免费在线观看 | 91国语对白国产刺激综合 | 国产又黄又粗又猛又爽视频 | 国产成人综合美在线 | 91**片视频视频 | 亚洲午夜精品是一款非常热门的直播平台 | 國產精品v歐美精品∨日韓 | 欧美成人一区二区精品国产 | 伊人精品无码一区二区三区电影 | 91在线午夜宅福利100 | 久久这里只精品99 | 国产高清中文字幕在线 | 9l精品人妻中文字幕色欲 | 免费高潮喷水内射视频 | 无码A级一区二区三区毛片视频 | 扑克牌生产视频又疼又叫的网站 | 亚洲日韩中文无码制服 | 桃子视频在线观看WWW黄 | 国产免费毛卡片 | 一级特黄日本免费大片 | 日韩亚洲精品毛片 | 国产精品丝袜久久久久久ä | 又爽又高潮的免费视频在线 | 亚洲欧美另类草 | 在线观看你懂的视频 | 天天打天天鲁天天爽在线观看 | 国产午夜精品久久精品电影 | 夜夜福利视频久久网 | 亚洲老鸭窝A∨片一区二区三区 | 亚洲成av人片一区二区在线观看 | 无码r级福利无码 | 亚洲少妇免费日批网 | 任你干任你日在线精品视频 | 国产亚洲精品拍拍视频 | 可以直接看的av网址站 | 国产毛片农村妇女系列 | 日本精品激情乱一区二区 | 久久99精品亚洲热综合 | 欧美成人三级影院 | 国内一区二区三级欧美射射 | 久久99成人精品国产 | 99热这里只有是精品在线观看 | 成人av电影免费在线观看 | 2020每日更新国产精品视频 | 亚洲91综合在线 | 大陆女明星毛片在线视频 | 免费观看AAA片在线播放 | 99久久久国产一区二区三区 | 少妇高潮爽在线观看免费 | 国产麻豆成人免费 | 国产精品v欧美精品v日韩精品青青 | 国产最新视频网址 | 99re成人精品视频免费看 | 久久影国产精品 | 国产精品免费大片久久久国产一区二区三区 | 亚洲人人夜夜操人人爽 | 欧美亚洲综合激情电影 | 久久露脸国产精品探花牛仔裤 | 能随意看女生部位的漫画软件 | 亚瑟日韩久久久久 | 水蜜桃app带你飞 | 亚洲欧美日韩系列在线观看 | 亚洲精品在线人妻 | 日韩欧美国产另类一区二区 | 亚洲欧美国产精品久久久久久久 | 欧美激情在线播放第一页 | 亚洲无日韩码精品第一页 | 最新二区精品无码电影 | 在线中文字幕一区二区精品区 | 欧美国产成人在线精品观看网站 | 日产精品码2码三码四码区久久亚洲AV成人无码 | 久久精品亚洲无中文亚洲欧美日韩久久精品 | 亚洲中文欧美韩日 | 欧美亚洲另类精品第一页 | 亚洲中文字幕精品久久久久 | 丰满熟女高潮视频国产 | 国产精品久久久久AAAA | 亚洲欧美另类图片日韩 | 国产三级毛片普通话 | 国产91熟女专区 | 榴莲视频色版APP | 亚洲福利日韩网曝 | 欧美V日韩V亚洲V在线观看 | 日产乱码在线观看心得 | 囯产精品一区二区免费在线观看 | 美女裸体视频一区二区播放国产欧美一区二区精品性色一 | 亚洲AV无码乱码无线观看 | 欧美99久久精品乱码影视 | 国产在视频2019不卡 | 无码夜色一区二区三区 | 日本一级A片中文字幕视频 | 亚洲欧洲日韩一区三区四区 | 日本免费午夜影院 | 日韩二区不卡av电影 | 国产亚洲欧美日韩成人观看 | 亚洲v欧美v精品v日本 | 青青草日韩视频在线观看 | 国产福利小视频性欧美18 | 亚洲欧美精品中文三区 | 手机看片1042欧美日韩你懂的 | 2020亚洲欧美日韩在线国产精品 | 日韩亚洲欧美一区二区 | 国产精品亚洲区av无人区一区 | 亚洲综合av色婷婷国产野外 | 欧美在线观看在线视频网站 | 日韩在线视频中文字幕一区 | 欧美一级狌交大片好爽 | 国产成人综合亚洲色婷婷 | 国产亚洲视频在线播放互動交流 | 黑人玩弄人妻一区二区三区a | 国产成人精品久久久欧美日韩亚洲综合区 | 亚洲av影院免费观看 | 在线观看日韩在线双飞 | cos亚洲日韩在线视频国产 | 中文字幕的理伦片免费 | 国产剧情AⅤ沈樵全集 | 欧美久久精品一c片一级 | 久久久99精品免费观看在 | 国产美女爽到高潮嗷嗷叫视频 | 国产精品未满十八毛片a级毛片 | 久久99精品久久噜噜6 | 在线观看日韩在线双飞 | 最新网手机在线观看最新版а√天堂一区二区三区 | 亚洲精品人成久久久久 | 久久成人无码一区二区 | 再深点灬舒服灬太大了o在线观看 | 尹人在线中文字幕精品免费 | 色婷婷aⅤ日韩一区二区三区在线 | 最新无码专区在线视频免费频 | 日韩欧美精品亚洲一级在线 | 亚洲精品人成久久久久 | 四虎永久在线精品2022 | 亚洲网站av免费观看younv能看网站 | 国产蜜芽香蕉精品久久 | 午夜福利影院手机在线观看 | 电影午夜日韩国产污 | 亚洲国产精品成人久久综合网 | 国产91变态在线观看 | 国产午夜福利在线观看片97 | 国产男人的天堂av区 | 影视亚洲日本久久 | 1000部拍拍拍18勿入免费视频下载 | 亚洲高清美女做性视频 | 久久福利网站 | 亚洲国产综合专区在线观看 | 办公室午夜福利 | 国产日产成人免费观看日 | 欧美亚洲精品国产字幕在线观看 | 美女光屁股扒开腿让男人桶爽免费 | 欧美日韩69视频 | 欧美精品亚洲精品小说区 | 少妇被又粗又大猛烈进出播放 | 日韩精品 电影一区 亚洲 | 暖暖日本社区免费观看 | 在线看片免费观看视频网址 | 波多野吉衣免费一区 | 探花视频免费在线观看 | 国产精品未满十八毛片a级毛片 | 亚洲韩国日本欧美视频 | 国产亚洲精品拍拍视频 | 国产亚洲精品拍拍视频 | 99ri在线精品视频在线播放 | 日本高清2018色视频日本轻视 | 色婷婷aⅤ日韩一区二区三区在线 | 99re视频综合在线播放 | 日韩一品欧美一区 | 全国最新精品免费精品 | 熟女一区二区三区四区 | 最近中文字幕无免费视频 | 亚洲中文字幕琪琪在线 | 日韩土豆av网在线观看 | 太深了啊慢点噗嗤噗嗤视频 | 国产精品亚洲丝袜专区 | 国产福利小视频性欧美18 | 日韩亚洲精品全部在线观看 | 国模极品一区二区 | 麻app豆传媒视频 | 自拍视频国产免费 | 亚洲成av人片一区二区在线观看 | 能随意看女生部位的漫画软件 | 91水蜜桃在线观看视频 | 69堂最新啪啪网址 | 日本亚洲欧洲在线 | 日韩欧美不卡一卡二卡3卡四卡2024免费 | 2021国内精品久久久久免费 | 中文字幕欧美视频在线 | 日韩欧美精品亚洲一级在线 | 欧美精品一区二区自拍 | 国产精品国产三级国产avktv | 日韩中文字幕乱码播放 | 免费av电影不卡在线观看 | 深夜污污污免费视频福利 | 自拍视频国产免费 | 在线观看免费国产成人软件 | 亚洲欧美精品中字久久99 | 69堂久久精品正在播放 | 亚洲国产日韩小视频网站 | 免费看国产精品日日摸 | 亚洲激情视频在线观看 | 欧美日韩国产动漫一区视频 | 极品白嫩虎白女视频 | 麻豆91在线国产 | 国产蜜芽香蕉精品久久 | 99热亚洲色精品国产88 | 无码字幕无码精品无码 | 亚洲一区二区三区资源在线 | 国产蜜臀αV在线一区尤物 | 最新网手机在线观看最新版а√天堂一区二区三区 | 欧美亚洲综合激情电影 | 欧美亚洲日韩国产综合va在线 | AV熟女国产一区二区三区 | 蜜桃视频在线观看网站 | 三上悠亚ssni中文字幕 | 青青青青久久久久国产的 | 亚洲成av人片一区二区在线观看 | 亚洲日韩欧美成人在线影院 | 2020每日更新国产精品视频 | 亚洲欧美日韩久久久另类精品 | 抖音探探成色软件入口 | 中国xxxx精品视频 | 丁香五月激情综合色/久 | 国产精品v欧美精品v日韩精品青青 | 真人片免费视频网站 | 国产电影白丝袜在线观看 | 未满十八禁视频网站 | 成人无码视频在线观看大全 | 欧美嗯啊视频在线观看 | 少妇高潮爽在线观看免费 | 2021国产亚洲日韩在线 | 亚洲国产综合专区在线观看 | 美女裸体免费观看国产 | 亚洲 丝袜 制服 美腿 综合 | 欧美色激情在线二区 | 日韩av中文字幕在线观看不卡 | 香蕉超碰亚洲国产区中文 | 亞洲歐美日韓一區高清中文字幕 | 成年视频人免费网站动漫在线 | 高清日韩网站 | 亚洲精品高清在线观看 | 国产精品成人一区二区在线观看 | 国产亚洲欧美福利 | 女教师の爆乳BD在线观看 | 亚洲A∨无码一区二区小说 | 日本亚洲免费在线 | 亚洲女同熟女一区二区三区 | 欧洲少妇搡BBBB视频 | 亚洲国产精品中文字幕久久 | 琪琪网最新伦永久观看2019 | 美女露100%全身无遮挡 | 99国产免线观看九 | 国产成人精品自在拍在线观看 | 91免费看`日韩一区二区亚洲国产 | 羞羞动漫美女的胸被狂揉扒开 | 精品国模无码一区二区三区 | 蜜桃视频免费观看视频 | 天堂а√在线最新版在线8 | 奇米影视四色在线 | 久草免费在线视频观看 | 天堂网www在线最新版 | 波多野结衣ac蜜芽在线观看 | 日本中文字幕在线二区 | 97国产自在现线免费视频 | 男人j日女人p免费视频 | 久久99精品亚洲热综合 | 中日免费视频在线观看 | 中文字幕网址在线视频观看 | 精品一区二区三区亚洲综合 | 91视频网站成人 | 成人免费毛片视频APP | 亚洲高清偷拍一区二区三区 | 国产中文字幕Av日韩精品一区二 | 午夜精品国产成人福利免费看 | 日本视频观看无卡免费精品页码 | 亚洲日韩欧美成人在线影院 | 最近中文字幕电影大全免费版 | 欧美孕交videosfree另类电影 | 美女光屁股扒开腿让男人桶爽免费 | 亚洲欧美人成电影在线观看 | 亚洲精品中文字幕乱码4区 | 奇米7777av综合奇米影视8888 | 亚洲日韩欧美高清香蕉区在线观看 | 亚洲一区欧美二区中文字幕 | 麻豆果冻传媒2024精品传媒一区 | 久草手机在线观看视频 | 精精国产XXXX视频在线www | 亚洲精品中文字幕乱码4区 | 精品国产一区二区三区A v 性色 | 午夜精品国产成人福利免费看 | 18国产欧美久久久精品影院 | 操美熟妇大片一二三区 | 免费美女裸妆视频软件下载 | 婷婷综合久久狠狠色99H | 91精品日韩在线中文字幕 | 可以直接看的av网址站 | 精品国产高清一区二区三区人妖 | 中文字幕一区二区无码专区 | 洲日韩中文字幕一级乱码在线播放 | 午夜精品久久久久久久2023 | 亞洲av第一成肉網 | 国产精品一个二三级片 | 双男主真人有车车的软件免费 | 久久99热免费热这里有精品 | 九九视频国产免 | 麻豆国产在线毛线影视 | 国产亚洲欧美福利 | 中文字幕熟女一区二区三区 | 日本老熟妇老太成熟 | 欧美亚洲动漫一区二区在想线 | 老熟女久久久久一区二区 | HEYZO中文字幕人妻无码 | 欧洲精品免费一区二区三区 | 国产无套粉嫩在线观看 | 男人j日女人p免费视频 | 尤物视频网页大全 | 日韩不卡av中文字幕 | 99爱在线精品视频免费观看9 | 中文字字幕乱码二区三区 | 欧美卡一卡二卡三卡四卡100 | 丁香五月天婷婷激情91精品免费 | 国精产品一区一区三区四区mba | 丝袜视频蜜桃在线观看 | 一级电影在线播放 | 汇聚最新免费欧美青娱乐在线视频全集 | 男人进去女人爽免费视频 | 青柠视频手机在线高清观看 | 最新二区精品无码电影 | 1000部拍拍拍18勿入免费视频下载 | 亚洲成人中文综合精品在线 | 老湿影院在线免费观看 | 精品国产高清一区二区三区人妖 | 色多多99在线热播视频 | 亚洲综合狠狠99婷婷 | 无码肥臂精品一区二区三区 | 亚洲日韩国产一区二区 | 91水蜜桃在线观看视频 | 欧美国产成人在线精品观看网站 | 欧美性色黄大片欧美40老熟妇 | 免费两性的视频网站国产 | 好吊视频一区二区三区免费 | 男女天堂av资源网 | 人人妻人人澡人人爽欧美精品潮喷 | 国产z0zo人禽交视频快速播放 | 一个人免费观看的www在线观看 | 成人无码免费一级体验区 | 日韩欧美国产另类一区二区 | 欧美激情aa一区二区三区 | 日韩一级一在线观看视频 | 亚洲日韩伦理中文字幕在线观看 | 做爱视频免费观看网站 | 国产黑色丝袜一区在线 | 亚洲aⅴ天堂av在线观看 | 成人黄色大片网站 | 欧美精品一区二区自拍 | 在线观看国产精品日韩av | 国产又黄又粗又长又猛 | 亞洲綜合高清精品導航網址 | 免费在线观看视频国产 | 久久影国产精品 | 亚洲欧美久久网站 | 一区二区三区人妻熟妇 | 女露乳头无遮挡网站在线看 | 暖暖日本社区免费观看 | 国产+欧洲+在线观看 | 亚洲区欧洲中文字幕 | 东北熟女脏话对白 | 18国产欧美久久久精品影院 | 日本中文字幕有码在线视频三级 | 日韩在线看片免费人成视频 | 西西人体444WWW高清大但 | 午夜福利影院在线不卡 | 国产乱妇乱子视频在线播放国产 | 久久久久熟女一区二区三区 | 亚洲欧美另类日韩专区 | 美女裸体视频一区二区播放国产欧美一区二区精品性色一 | 我故意没有穿内裤坐公车让视频 | 永久免费人成在线直播 | 国产区欧美区一区二区三区 | 野花视频在线观看最新视频观看 | 日本又色又爽又黄的网站在线观看 | 亚洲一区二区三区高清不卡 | 狠狠色噜噜91色狠狠狠综合久久 | 美女被男人下面桶爽的视频 | 欧美日韩小视频 | 天天综合网日韩电影 | 老子影院老子影院卡不伦 | 最新亚洲日韩AV一区二区 | 欧美熟妇情趣办公室XXⅩ视频 | 国产精品亚洲区av无人区一区 | 国产蜜芽香蕉精品久久 | 欧洲中文日韩亚洲精品视频 | 最新无码专区在线视频免费频 | 国产精品成人一区二区在线观看 | 免费美女裸妆视频软件下载 | 亚洲午夜久久久影院伊人 | 欧美日韩国产动漫一区视频 | 日本三區四區免費高清不卡 | 欧美日韩一区久久午夜精选 | 欧美乱人伦中文字幕视频 | 一区二区不卡视频观看 | 美女胸18以下看禁止免费视频 | 国产亚洲欧美精品综合观看三区 | 不卡一区二区免费在线观看 | 日韩欧美一卡2卡3卡4卡无卡免费201 | 国产亚洲一区二区在线软件 | 中文字母色婷婷 | 欧美日韩性感尤物在线 | 最近中文字幕无免费视频 | 在线a亚洲老鸭窝天堂av | 国产亚洲视频在线播放互動交流 | 亚洲成都私人影院 | 日韩成人理论在线影院 | 四虎最新在线免费观看 | 黑人上司粗大拔不出来廣 | 国产精品亚洲区av无人区一区 | 专区中文字幕无码一区二区三区 | 亚洲一区二区三区电影网 | 日韩精品午夜小视频 | 奇米网777久久综合网欧美 | 国产精品国产三级国产avktv | 久久99热免费热这里有精品 | 欧美亚洲国产suv | 国产精品综合AV一区二区首页 | 香蕉搞黄视频 | 亚洲欧美精品中字久久99 | 夜夜欢夜夜爱免费视频2019 | 狠日狠干日日射 | 啪一啪日韩在线视频免费 | 爽爽爽精品一区二区三区亚洲熟女 | 日韩免va无码中文字幕 | 国产制服丝袜福利 | 欧美巨大性爽欧美精品 | 亚洲无线观看国产精品 | 91精品中文字幕a | 美女扒开腿让男生桶爽网站 | 亚洲欧洲综合影院 | 美女裸体视频一区二区播放国产欧美一区二区精品性色一 | 免费成年人视频国产 | 手机看片国产日韩久久18 | 欧美一片二片午夜福利在线快 | 欧美777www奇米影视大全 | 日韩永久免费精品视频 | 免费真日韩无羞遮在线网 | asS亚洲肉体欣赏piCS | 久久成人亚洲精品欧美 | 五月丁香欧美综合久久久 | 免費啪視頻一區二區三區 | 欧美一区二区放荡人妇 | 精品国产乱码久久久久久强 | 精品亚洲永久免费直播 | 精品动态视频剧情在线播放 | 成人黄色大片网站 | chinese熟女老女人hd视频 | 久久99成人精品国产 | 床震吃乳强吻扒内裤漫画 | 91麻豆精品国产一区色欲 | 国产又粗又大又猛又爽又黄的视频 | 99精品96成人国产又粗又大 | 欧美黑人大战白嫩 在线 | 边爱边做在线观看免费视频 | 2021国内精品久久久久免费 | 亚洲国产精品1234区 | 国产不卡免费视频 | 另类重口特殊AV无码 | 亚洲网站av免费观看younv能看网站 | 爽爽爽精品一区二区三区亚洲熟女 | 亚洲中文字幕av免费电影 | 亚洲十八禁毛片在线 | 国产交换配乱婬视频免费99 | 华丽的外出在线观看整板 | 久久精品免费网络 | 日本黄色片网址 | 免费深夜全片观看 | 歐美亞洲國產激情一區二區 | 亚洲日本欧美在线观看 | 舌头伸进去添的我好爽高潮电影 | 男女猛进猛出无遮掩免费视频 | 2020在视频国产9 | 免费观看的成年网站不下载 | 欧美日韩69视频 | 在线免费观看做爱视频 |