10.文件處理系統(tǒng)

文件系統(tǒng)概述

文件的類型

在程序運(yùn)行時(shí)裳瘪,程序本身和數(shù)據(jù)一般都存在內(nèi)存中,當(dāng)程序運(yùn)行結(jié)束后罪针,存放在內(nèi)存中的數(shù)據(jù)被釋放彭羹。

如果需要長(zhǎng)期保存程序運(yùn)行所需的原始數(shù)據(jù),或程序運(yùn)行產(chǎn)生的結(jié)果泪酱,就必須以文件形式存儲(chǔ)到外部存儲(chǔ)介質(zhì)上派殷。

文件一般指存儲(chǔ)在外部介質(zhì)上具有名字(文件名)的一組相關(guān)數(shù)據(jù)集合。用文件可長(zhǎng)期保存數(shù)據(jù)墓阀,并實(shí)現(xiàn)數(shù)據(jù)共享毡惜。

PHP是以UNIX的文件系統(tǒng)為模型的。因此在Windows系統(tǒng)中我們只能獲得”file”斯撮、”dir”或者“unknown”三種文件類型经伙。而在UNIX系統(tǒng)中,我們可以獲得block勿锅、char帕膜、dir、fifo粱甫、file泳叠、link和unknown七種類型。
可以使用函數(shù)filetype()獲取文件的具體類型茶宵。

語法:string filetype ( string filename ) 
文件類型 描述
block 塊設(shè)備文件危纫,如某個(gè)磁盤分區(qū),軟驅(qū)乌庶,光驅(qū)CD-ROM等
char 字符設(shè)備是指在I/O傳輸過程中以字符為單位進(jìn)行傳輸?shù)脑O(shè)備种蝶,如鍵盤、打印機(jī)等
dir 目錄類型瞒大,目錄也是文件的一種
fifo 命名管道螃征,常用于將信息從一個(gè)進(jìn)程傳遞到另一個(gè)進(jìn)程
file 普通文件類型,如文本文件或可執(zhí)行文件等
link 符號(hào)鏈接透敌,是指向文件指針的指針盯滚。類似Windows中的快捷方式
unknow 位置類型
  • is_dir( ) -- 判斷給定文件名是否是一個(gè)目錄
    語法結(jié)構(gòu):bool is_dir(名稱)
    返回類型:文件名存在并且是一個(gè)目錄則返回 true踢械,否則返回 false。

  • is_executable( ) -- 判斷給定文件名是否可執(zhí)行
    語法結(jié)構(gòu):bool is_executable(名稱)
    返回類型:如果文件存在且可執(zhí)行則返回 true 魄藕,否則返回 false 内列。

  • is_file( ) -- 判斷給定文件名是否為一個(gè)正常的文件
    語法結(jié)構(gòu):bool is_file(名稱)
    返回類型:如果文件存在且為正常的文件則返回 true 。

  • is_link( ) -- 判斷給定文件名是否為一個(gè)符號(hào)連接
    語法結(jié)構(gòu):bool is_link(名稱)
    返回類型:如果文件存在并且是一個(gè)符號(hào)連接則返回 true背率。

  • is_readable( ) -- 判斷給定文件名是否可讀
    語法結(jié)構(gòu):bool is_readable(文件名稱)
    返回類型:如果文件存在并且可讀則返回 true 话瞧。

  • is_writable( ) -- 判斷給定的文件名是否可寫
    語法結(jié)構(gòu):bool is_writable(文件名稱)
    返回類型:如果文件存在并且可寫則返回 true 。

文件的屬性

函數(shù)名 作用 參數(shù) 返回值
file_exists( ) 檢查文件或目錄是否存在 文件名 存在:true寝姿,不存在:false
filesize() 取得文件大小 文件名 返回大小字節(jié)數(shù)交排,出錯(cuò):false
is_readable() 判斷文件是否可讀 文件名 文件可讀返回true
is_writable() 判斷文件是否可寫 文件名 文件可寫返回true
is_executable() 判斷文件是否可執(zhí)行 文件名 文件可執(zhí)行返回true
filectime() 獲取文件的創(chuàng)建時(shí)間 文件名 返回UNIX時(shí)間戳格式
filemtime() 獲取文件的修改時(shí)間 文件名 返回UNIX時(shí)間戳格式
fileatime() 獲取文件的訪問時(shí)間 文件名 返回UNIX時(shí)間戳格式
stat() 獲取文件大部分屬性 文件名 返回給定屬性信息的數(shù)組

目錄的基本操作

解析目錄路徑

使用PHP腳本可以方便對(duì)目錄進(jìn)行操作,如創(chuàng)建目錄饵筑、遍歷目錄埃篓、復(fù)值目錄與刪除目錄等操作。
常用的文件目錄路徑格式:

$unixPath="/var/www/html/index.php";    
    //在UNIX系統(tǒng)中的絕對(duì)路徑翻翩,必須使用"/"分隔
$winPath="C:\\Appserv\\www\\index.php"; 
    //在Windows系統(tǒng)的絕對(duì)路徑都许,默認(rèn)使用"\"分隔
$winPath2="C:/Appserv/www/index.php";   
    //在Windows系統(tǒng)中也可使用“/”分隔。

注意使用絕對(duì)路徑與相對(duì)路徑嫂冻。

  • basename -- 返回路徑中的文件名部分
語法:string basename ( string path [, string suffix] )

給出一個(gè)包含有指向一個(gè)文件的全路徑的字符串胶征,本函數(shù)返回基本的文件名。如果文件名是以 suffix 結(jié)束的桨仿,那這一部分也會(huì)被去掉睛低。

  • dirname -- 返回路徑中的目錄部分
語法:string dirname ( string path )

給出一個(gè)包含有指向一個(gè)文件的全路徑的字符串,本函數(shù)返回去掉文件名后的目錄名服傍。

   <?php
        $path = "/home/httpd/html/index.php";
        $file = basename($path);        // $file值:"index.php"
        $file = basename($path, ".php ");   // $file值:"index "
        $file = dirname($path);      // $file值:"/home/httpd/html"
    ?>
  • pathinfo -- 返回文件路徑的信息
語法:array pathinfo ( string path [, int options] )

pathinfo() 返回一個(gè)聯(lián)合數(shù)組包含有 path 的信息钱雷。包括以下的數(shù)組單元:dirname,basename 和 extension吹零。

  • realpath -- 返回規(guī)范化的絕對(duì)路徑名
語法:string realpath ( string path )

realpath() 擴(kuò)展所有的符號(hào)連接并且處理輸入的 path 中的 '/./', '/../' 以及多余的 '/' 并返回規(guī)范化后的絕對(duì)路徑名罩抗。返回的路徑中沒有符號(hào)連接,'/./' 或 '/../' 成分灿椅。

<?php
   $path_parts = pathinfo("/www/htdocs/index.html");
   echo $path_parts["dirname"]."\n";    // /www/htdocs
   echo $path_parts["basename"]."\n";   // index.html
   echo $path_parts["extension"]."\n";  // html
 ?>

遍歷目錄

  • opendir -- 打開目錄句柄
語法:resource opendir ( string path [, resource context] )

打開一個(gè)目錄句柄套蒂,可用于之后的 closedir(),readdir() 和 rewinddir() 調(diào)用中茫蛹。

  • readdir -- 從目錄句柄中讀取條目
語法:string readdir ( resource dir_handle )

返回當(dāng)前目錄指針位置的文件名操刀,沒有返回false,并將指針向下移動(dòng)一位婴洼。文件名以在文件系統(tǒng)中的排序返回骨坑。

  • closedir -- 關(guān)閉目錄句柄
語法:void closedir ( resource dir_handle )

關(guān)閉由 dir_handle 指定的目錄流。流必須之前被 opendir() 所打開柬采。

  • rewinddir -- 倒回目錄句柄
語法:void rewinddir ( resource dir_handle )

將 dir_handle 指定的目錄流重置到目錄的開頭欢唾。

<?php //遍歷指定目錄實(shí)例
    $num=0;                                 //用來統(tǒng)計(jì)子目錄和文件的個(gè)數(shù)
    $dirname='phpMyAdmin';              //定義一個(gè)目錄名
    $dir_handle=opendir($dirname);      //用opendir打開目錄
    //將遍歷的目錄和文件名使用表格格式輸出
    while($file=readdir($dir_handle)) {     //使用readdir循環(huán)讀取目錄里的內(nèi)容
        $dirFile=$dirname."/".$file;            //追加目錄名
        echo "文件名: ".$file." | ";                   //顯示文件名
        echo "大小: ".filesize($dirFile)." | ";         //顯示文件大小
        echo "類型: ".filetype($dirFile)." | ";         //顯示文件類型
        echo "創(chuàng)建時(shí)間: ".date("Y/n/t",filectime($dirFile))."<br/>";
        $num++;
    }
    closedir($dir_handle);          //關(guān)閉文件操作句柄
    echo '在<b>'.$dirname.'</b>目錄下共有文件<b>'.$num.'</b>個(gè)';
?>

統(tǒng)計(jì)目錄大小

  • disk_free_space -- 返回目錄中的可用空間
語法:float disk_free_space ( string directory )

給出一個(gè)包含有一個(gè)目錄的字符串且警,本函數(shù)將根據(jù)相應(yīng)的文件系統(tǒng)或磁盤分區(qū)返回可用的字節(jié)數(shù)。

  • disk_total_space -- 返回一個(gè)目錄的磁盤總大小
語法:float disk_total_space ( string directory )

給出一個(gè)包含有一個(gè)目錄的字符串礁遣,本函數(shù)將根據(jù)相應(yīng)的文件系統(tǒng)或磁盤分區(qū)返回所有的字節(jié)數(shù)振湾。

<?php
//定義一個(gè)統(tǒng)計(jì)指定目錄大小的函數(shù)
function dirSize($dir){
    $size=0;
    //1. 判斷參數(shù)是否有效
    if(!file_exists($dir) || !is_dir($dir)){
        die("無效的參數(shù)!");
    }
    //2. 打開目錄
    $dd = opendir($dir);
    //3. 跳過連個(gè)特殊目錄:"."和".."
    readdir($dd);readdir($dd);
    //4. 開始遍歷目錄中文件
    while($f = readdir($dd)){
        //加上目錄名
        $file = rtrim($dir,"/")."/".$f;
        //判斷是否是文件
        if(is_file($file)){
            $size+=filesize($file);
        }
        //判斷是否是目錄
        if(is_dir($file)){
            //采用遞歸調(diào)用亡脸,統(tǒng)計(jì)子目錄大小
            $size+=dirSize($file); 
        }
    }
    //5. 關(guān)閉目錄
    closedir($dd);
    //6. 返回結(jié)果
    return $size;
}

echo dirSize('test');
?>

建立與刪除目錄

  • mkdir -- 新建目錄
語法:bool mkdir (string pathname [,int mode])

嘗試新建一個(gè)由 pathname 指定的目錄。

  • rmdir -- 刪除目錄
語法:bool rmdir ( string dirname )

嘗試刪除 dirname 所指定的目錄树酪。 該目錄必須是空的浅碾,而且要有相應(yīng)的權(quán)限。如果成功則返回 TRUE续语,失敗則返回 FALSE垂谢。

  • unlink -- 刪除文件
語法:bool unlink ( string filename )

刪除 filename。和 Unix C 的 unlink() 函數(shù)相似疮茄。如果成功則返回 TRUE滥朱,失敗則返回 FALSE。

<?php
//自定義刪除目錄函數(shù)
function delDir($dir){
    //1. 判斷是否是有效文件或目錄
    if(!file_exists($dir)){
        die("文件或目錄{$dir}不存在力试!");
    }
    //2. 若是文件就直接刪除
    if(is_file($dir)){
        unlink($dir);return true;
    }
    //3. 打開目錄
    $dd = opendir($dir);
    //4. 跳過兩個(gè)特殊目錄:"." ".."
    readdir($dd);readdir($dd);
    //5. 遍歷目錄徙邻,并刪除里面的文件
   while($f = readdir($dd)){
      //加上全路徑
        $file = rtrim($dir,"/")."/".$f;
        //判斷是否是目錄還是文件
        if(is_dir($file)){
      //采用遞歸調(diào)用刪除子目錄
            delDir($file); 
        }else{
      //刪除文件
            unlink($file); 
        }
    }   
    //6. 關(guān)閉目錄
    closedir($dd);
    //7. 刪除目錄
    rmdir($dir);
    return true;
}
?>

復(fù)制目錄

  • copy -- 拷貝文件
語法:bool copy ( string source, string dest )

將文件從 source 拷貝到 dest。如果成功則返回 TRUE畸裳,失敗則返回 FALSE缰犁。
PHP中沒有提供復(fù)制與移動(dòng)目錄的相關(guān)函數(shù)。如需要怖糊,只要自定義函數(shù)了帅容。
如何定義一個(gè)目錄復(fù)制函數(shù)呢?

文件的基本操作

文件的打開與關(guān)閉

  • fopen -- 打開文件或者 URL
語法:resource fopen ( string filename, string mode [, bool use_include_path [, resource zcontext]] )

filename參數(shù)需要提供要被打開文件的URL伍伤。這個(gè)URL可以是腳本所在的服務(wù)器中的絕對(duì)路徑并徘,也可以是相對(duì)路徑,還可以是網(wǎng)絡(luò)資源用的文件扰魂。

mode 參數(shù)指定了所要求到該流的訪問類型,(強(qiáng)烈建議附加b模式)麦乞。

如果也需要在 include_path中搜尋文件的話,可以將可選的第三個(gè)參數(shù) use_include_path 設(shè)為 '1' 或 TRUE阅爽。

如果打開失敗路幸,本函數(shù)返回 FALSE。

  • fclose -- 關(guān)閉一個(gè)已打開的文件指針
語法:bool fclose ( resource $handle )

將 handle 指向的文件關(guān)閉付翁。 成功時(shí)返回 TRUE简肴, 或者在失敗時(shí)返回 FALSE.

<?php
    //使用絕對(duì)路徑打開file.txt文件,選擇只讀模式百侧,并返回資源$handle
    $handle = fopen("/home/rasmus/file.txt", "r");

    //訪問文檔根目錄下的文件砰识,也以只讀模式打開
    $handle = fopen("{$_SERVER['DOCUMENT_ROOT']}/data/info.txt", "r");

    //在 Windows 平臺(tái)上能扒,轉(zhuǎn)義文件路徑中的每個(gè)反斜線,或者用斜線辫狼,以二進(jìn)制和只寫模式組合
      
    $handle = fopen("c:\\data\\file.gif", "wb");

    //使用相對(duì)路徑打開file.txt文件初斑,選擇只讀模式,并返回資源$handle
    $handle = fopen("../data/info.txt", "r");

    //打開遠(yuǎn)程文件膨处, 使用HTTP協(xié)議只能以只讀的模式打開
    $handle = fopen("http://www.example.com/", "r");

    //使用FTP協(xié)議打開遠(yuǎn)程文件见秤,如果FTP服務(wù)器可寫,則可以以寫的模式打開
    $handle = fopen("ftp://user:password@example.com/somefile.txt", "w");
?>

寫入文件

  • fwrite -- 寫入文件(可安全用于二進(jìn)制文件)
語法:int fwrite ( resource handle, string string [, int length] )

fwrite() 把 string 的內(nèi)容寫入 文件指針 handle 處真椿。 如果指定了 length鹃答,當(dāng)寫入了 length 個(gè)字節(jié)或者寫完了 string 以后,寫入就會(huì)停止突硝,視乎先碰到哪種情況测摔。
返回寫入的字符數(shù),出現(xiàn)錯(cuò)誤時(shí)則返回 FALSE 解恰。

<?php
    //聲明一個(gè)變量用來保存文件名   
    $fileName = "data.txt";     
    //使用fopen()函數(shù)以只寫的模式打開文件锋八,如果不存在則創(chuàng)建它,
    //打開失敗則通過程序
    $handle = fopen($fileName, 'w') or die('打開<b>'.$fileName.'</b>文件失敗!!');
    
    //循環(huán)10次寫入10行數(shù)據(jù)到文件中
    for($row=0; $row<10; $row++) {    
        //寫入文件 
        fwrite($handle, $row.": www.baidu.com\n");    
    }
    //關(guān)閉由fopen()打開的文件指針資源
    fclose($handle);            
?>

讀取文件內(nèi)容

函數(shù)名 作用
fread() 讀取文件(可安全用于二進(jìn)制文件)
file_get_contents() 將文件讀入字符串
fgets() 從打開的文件中讀取一行
fgetc() 從打開的文件中讀取一個(gè)字符
file() 把文件讀入一個(gè)數(shù)組中(無需使用fopen打開)
readfile() 讀取一個(gè)文件护盈,并輸出到輸出緩沖(無需使用fopen打開)
<?php
    //從文件中讀取指定字節(jié)數(shù)的內(nèi)容存入到一個(gè)變量中
    $filename = "data.txt";                      //將本地文件名保存在變量中
    $handle = fopen($filename, "r") or die("文件打開失敗");  //以只讀的方式打開文件
    $contents = fread($handle, 100);  //讀取前100個(gè)字節(jié)挟纱;全部:filesize($filename)
    fclose($handle);                             //關(guān)閉文件資源
    // echo $contents;                             //將從文件中讀取的內(nèi)容輸出
    
    //從文件中讀取全部?jī)?nèi)容存入到一個(gè)變量中,每次讀取一部分黄琼,循環(huán)讀取
    $handle = fopen ($filename, "rb") or die("文件打開失敗");     
                 //以只讀的方式樊销,模式加了’b’
    $contents = "";                             
    while (!feof($handle)) {                  //使用feof()判斷文件結(jié)尾
        $contents .= fread($handle, 1024);     //每次讀取1024個(gè)字節(jié)
    }
    fclose($handle);                 //關(guān)閉文件資源
    echo $contents;                  //將從文件中讀取的全部?jī)?nèi)容輸出
?>
<?php
    // echo file_get_contents("data.txt");   //讀取文本文件中的內(nèi)容并輸出

   $handle = fopen("data.txt", "r")  or die("文件打開失敗"); //以只讀模式打開文件
    while (!feof($handle)) {                     //循環(huán)讀取第一行
        $buffer = fgets($handle, 4096);     //一次讀取一行內(nèi)容
        echo $buffer."<br>";                      //輸出每一行
    } 
    fclose($handle);                                 //關(guān)閉打開的文件資源


   $fp = fopen('data.txt', 'r') or die("文件打開失敗");  //以只讀模式打開文件    
    while (false !== ($char = fgetc($fp))) {   //在文件中每次循環(huán)讀取一個(gè)字節(jié)符
         echo $char."<br>";                             //輸出單個(gè)字符
    }
    
    print_r( file("test.txt") );        //將文件test.txt中的內(nèi)容讀入到一個(gè)數(shù)組中,并輸出
    
    readfile("data.txt");              //直接將文件data.txt中的數(shù)據(jù)讀出并輸出到瀏覽器
?>

移動(dòng)文件指針

  • ftell -- 返回文件指針讀/寫的位置
語法:int ftell ( resource handle )

返回由 handle 指定的文件指針的位置脏款,也就是文件流中的偏移量围苫。 如果出錯(cuò),返回 FALSE撤师。文件指針必須是有效的剂府,且必須指向一個(gè)通過 fopen()或 popen()成功打開的文件。

  • fseek -- 在文件指針中定位
語法:int fseek ( resource handle,int offset [,int whence] )

在與 handle 關(guān)聯(lián)的文件中設(shè)定文件指針位置剃盾。新位置腺占,從文件頭開始以字節(jié)數(shù)度量,是以 whence 指定的位置加上 offset痒谴。whence 的值定義為:
SEEK_SET - 設(shè)定位置等于 offset 字節(jié)衰伯。
SEEK_CUR - 設(shè)定位置為當(dāng)前位置加上 offset。
SEEK_END - 設(shè)定位置為文件尾加上 offset积蔚。(要移動(dòng)到文件尾之前的位置意鲸,需要給 offset 傳遞一個(gè)負(fù)值。)
如果 沒有指定 whence,默認(rèn)為 SEEK_SET怎顾。
成功則返回 0读慎;否則返回 -1。注意移動(dòng)到 EOF 之后的位置不算錯(cuò)誤

  • rewind -- 倒回文件指針的位置
語法:bool rewind ( resource handle )

將 handle 的文件位置指針設(shè)為文件流的開頭槐雾。 如果成功則返回 TRUE夭委,失敗則返回 FALSE。 文件指針必須合法募强,并且指向由 fopen() 成功打開的文件株灸。

文件的一些基本操作函數(shù)

  • copy -- 拷貝文件
語法:bool copy ( string source, string dest )

將文件從 source 拷貝到 dest。如果成功則返回 TRUE擎值,失敗則返回 FALSE蚂且。

  • unlink -- 刪除文件
語法:bool unlink ( string filename )

刪除 filename。和 Unix C 的 unlink() 函數(shù)相似幅恋。如果成功則返回 TRUE,失敗則返
回 FALSE泵肄。

  • ftruncate -- 將文件截?cái)嗟浇o定的長(zhǎng)度
語法:bool ftruncate ( resource handle, int size )

接受文件指針 handle 作為參數(shù)捆交,并將文件大小截取為 size。如果成功則返回 TRUE腐巢,失敗則返回 FALSE品追。

  • rename -- 重命名一個(gè)文件或目錄
語法:bool rename ( string oldname, string newname [, resource context] )

嘗試把 oldname 重命名為 newname。 如果成功則返回 TRUE冯丙,失敗則返回 FALSE肉瓦。

Have a try

  1. 參考目錄統(tǒng)計(jì)大小函數(shù),自定義一個(gè)刪除目錄的函數(shù)胃惜,注意目錄中的目錄泞莉。
  2. 使用文件處理函數(shù),自定義一個(gè)目錄復(fù)制函數(shù)船殉。
  3. 定義一個(gè)函數(shù)使用遞歸方式統(tǒng)計(jì)多維數(shù)組中的單元個(gè)數(shù)(遞歸函數(shù)練習(xí))
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末鲫趁,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子利虫,更是在濱河造成了極大的恐慌挨厚,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,042評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件糠惫,死亡現(xiàn)場(chǎng)離奇詭異疫剃,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)硼讽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門巢价,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事蹄溉∽捎停” “怎么了?”我有些...
    開封第一講書人閱讀 156,674評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵柒爵,是天一觀的道長(zhǎng)役电。 經(jīng)常有香客問我,道長(zhǎng)棉胀,這世上最難降的妖魔是什么法瑟? 我笑而不...
    開封第一講書人閱讀 56,340評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮唁奢,結(jié)果婚禮上霎挟,老公的妹妹穿的比我還像新娘。我一直安慰自己麻掸,他們只是感情好酥夭,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,404評(píng)論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著脊奋,像睡著了一般熬北。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上诚隙,一...
    開封第一講書人閱讀 49,749評(píng)論 1 289
  • 那天讶隐,我揣著相機(jī)與錄音,去河邊找鬼久又。 笑死巫延,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的地消。 我是一名探鬼主播炉峰,決...
    沈念sama閱讀 38,902評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼脉执!你這毒婦竟也來了讲冠?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,662評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤适瓦,失蹤者是張志新(化名)和其女友劉穎竿开,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體玻熙,經(jīng)...
    沈念sama閱讀 44,110評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡否彩,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了嗦随。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片列荔。...
    茶點(diǎn)故事閱讀 38,577評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡敬尺,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出贴浙,到底是詐尸還是另有隱情砂吞,我是刑警寧澤,帶...
    沈念sama閱讀 34,258評(píng)論 4 328
  • 正文 年R本政府宣布崎溃,位于F島的核電站蜻直,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏袁串。R本人自食惡果不足惜概而,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,848評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望囱修。 院中可真熱鬧赎瑰,春花似錦、人聲如沸破镰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鲜漩。三九已至晋辆,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間宇整,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評(píng)論 1 264
  • 我被黑心中介騙來泰國打工芋膘, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留鳞青,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,271評(píng)論 2 360
  • 正文 我出身青樓为朋,卻偏偏與公主長(zhǎng)得像臂拓,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子习寸,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,452評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容