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

首頁 > 編程 > PHP > 正文

前端學(xué)PHP之文件操作

2020-03-22 20:23:46
字體:
供稿:網(wǎng)友

  • 前面的話

      在程序運行時,程序本身和數(shù)據(jù)一般都存在內(nèi)存中,當(dāng)程序運行結(jié)束后,存放在內(nèi)存中的數(shù)據(jù)被釋放。如果需要長期保存程序運行所需的原始數(shù)據(jù),或程序運行產(chǎn)生的結(jié)果,就需要把數(shù)據(jù)存儲在文件或數(shù)據(jù)庫。一般地,小型數(shù)據(jù)存儲在文件中,海量數(shù)據(jù)存儲在數(shù)據(jù)庫中。本文主要介紹php中目錄和文件的基本操作

    文件類型

      文件一般指存儲在外部介質(zhì)上具有名字(文件名)的一組相關(guān)數(shù)據(jù)集合。用文件可長期保存數(shù)據(jù),并實現(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()獲取文件的具體類型,可能的值有fifo,char,dir,block,link,file 和 unknown

    string filetype ( string filename ) 

      如果出錯則返回 FALSE。如果調(diào)用失敗或者文件類型未知的話 filetype() 還會產(chǎn)生一個 E_NOTICE 消息

      在服務(wù)器中新建一個目錄test,并在目錄中新建一個文件a.txt

    <?phpecho filetype('test/a.txt');  // fileecho filetype('test/');        // direcho filetype('test/b.txt');  // Warning: filetype(): Lstat failed for test/b.txt?>

      在這7種文件類型中,window系統(tǒng)常用的是'file'和'dir'這兩種,它們配套的類型檢測函數(shù)分別是is_dir( )和is_file( )

    is_dir( )

      判斷給定文件名是否是一個目錄。如果文件名存在并且是一個目錄則返回 true,否則返回 false 

    bool is_dir(_name)

    is_file( )

      判斷給定文件名是否為一個正常的文件,如果文件存在且為正常的文件則返回 true

    bool is_file(_name)    
    <?phpvar_dump (is_file('test/a.txt'));  //boolean truevar_dump (is_dir('test/'));        //boolean true?>

    文件屬性

      一般地,在文件或目錄html' target='_blank'>右鍵菜單中,選擇屬性,即可查看文件的屬性

      下表中列出了php中關(guān)于文件屬性的常用函數(shù)

    <?phpvar_dump (file_exists('test/a.txt'));  //boolean truevar_dump (filesize('test/a.txt'));  // int 0 var_dump (is_readable('test/a.txt'));  //boolean truevar_dump (is_writeable('test/a.txt'));  //boolean truevar_dump (is_executable('test/a.txt'));  //boolean falsevar_dump (date('Y-m-d H:i:s',(filectime('test/a.txt'))));//string '2016-11-22 06:47:54' (length=19)var_dump (date('Y-m-d H:i:s',(filemtime('test/a.txt'))));//string '2016-11-22 06:47:54' (length=19)var_dump (date('Y-m-d H:i:s',(fileatime('test/a.txt'))));//string '2016-11-22 06:47:54' (length=19)?>

    目錄路徑

      windows下的目錄路徑使用是正斜杠(),而unix下的目錄路徑使用是反斜杠(/)

    $unixPath='/var/www/html/index.php';        //在UNIX系統(tǒng)中的絕對路徑,必須使用'/'分隔$winPath='C:/Appserv/www/index.php';     //在Windows系統(tǒng)的絕對路徑,默認(rèn)使用''分隔$winPath4='C:/Appserv/www/index.php';       //在Windows系統(tǒng)中也可使用“/”分隔

      因為在Windows系統(tǒng)中也可使用(/)分隔。所以,在PHP中,不論是什么操作系統(tǒng),全部都使用反斜杠(/)代表路徑分隔符號

      在PHP中,還提供了一個常量DIRECTORY_SEPARATOR,以此來代表目錄分隔符,但寫起來較麻煩

    <?phpecho 'c:'.DIRECTORY_SEPARATOR.'a'.DIRECTORY_SEPARATOR.'b'.DIRECTORY_SEPARATOR.'c'; //c:ac?>

      在windows下多個路徑的分隔符使用分號(;)分隔,而unix下使用冒號(:)分隔

      在PHP中,提供了一個常量PATH_SEPARATOR,用來在跨平臺的情況下,表示多個路徑之間的分隔符

    <?phpecho 'aaa/ccc/ddd'.PATH_SEPARATOR.'/www/yyyy';//aaa/ccc/ddd;/www/yyyy?>

    換行 

      在window下,換行是 ,而在unix下,換行是 。通常在寫程序中,換行就以unix為準(zhǔn),寫作

      同樣地,PHP提供了一個常量PHP_EOL,用來在跨平臺的情況下,表示換行

    .和..

      在PHP中,.表示當(dāng)前目錄,..表示上一級目錄

    <?phpvar_dump (file_exists('test/a.txt'));//boolean truevar_dump (file_exists('./test/a.txt'));//boolean truevar_dump (file_exists('../www/test/a.txt'));//boolean true?>

    根路徑

      有兩種根路徑需要進行區(qū)分,一種是客戶端根路徑,一種是服務(wù)器根路徑

      以我自己在d盤安裝的wamp為例,客戶端根路徑指'd:wampwww',而服務(wù)器根路徑為為'd:'

    <?phpecho '<img src='/a.jpg'>';//客戶端根路徑,相當(dāng)于d:wampwwwa.jpgmkdir('/hello');//服務(wù)器根路徑,相當(dāng)于d:hello?>

    路徑解析函數(shù)

    【basename()】

      basename()函數(shù)用于返回路徑中的文件名部分

    <?phpecho '1) '.basename('/etc/sudoers.d', '.d');//1) sudoersecho '2) '.basename('/etc/passwd').PHP_EOL;//2) passwdecho '3) '.basename('/etc/').PHP_EOL;//3) etcecho '4) '.basename('.').PHP_EOL;//4) .echo '5) '.basename('/');//5) ?>

    【dirname()】

      dirname()函數(shù)用于返回路徑中的目錄部分

    <?phpecho '1) ' . dirname('/etc/passwd') . PHP_EOL; // 1) /etcecho '2) ' . dirname('/etc/') . PHP_EOL; // 2) echo '3) ' . dirname('.'); // 3) .?>

    【pathinfo()】

      pathinfo()函數(shù)用于返回文件路徑的信息

    <?php$path_parts = pathinfo('/www/htdocs/inc/lib.inc.php');echo $path_parts['dirname'], '';// '/www/htdocs/inc' 目錄名echo $path_parts['basename'], '';// 'lib.inc.php' 文件名echo $path_parts['extension'], '';// 'php' 文件后綴echo $path_parts['filename'], ''; // 'lib.inc' 文件名不帶后綴?>

    【realpath()】

      realpath()函數(shù)用于返回規(guī)范化的絕對路徑名

      在Windows上,realpath()會將unix風(fēng)格的路徑改成Windows風(fēng)格的

    <?phpecho realpath('/wamp');// 'D:wamp'?>

    目錄遍歷

    glob()

      glob()函數(shù)用于尋找與模式匹配的文件路徑

    array glob ( string $pattern [, int $flags = 0 ] )

      在www目錄下新建a.txt和b.txt文件

    <?phpforeach (glob('*.txt') as $filename) {    //a.txt size 1050 b.txt size 73    echo '$filename size ' . filesize($filename) . '';}?>

    opendir()

      opendir()函數(shù)用于打開目錄句柄。如果成功則返回目錄句柄的resource,失敗則返回 FALSE

    resource opendir ( string $path [, resource $context ] )
    <?phpvar_dump(opendir('test'))//resource(3, stream)?>

    closedir()

      closedir()函數(shù)用于關(guān)閉目錄句柄

    void closedir ([ resource $dir_handle ] )

      參數(shù)dir_handle表示目錄句柄的 resource,之前由 opendir()所打開的。如果目錄句柄沒有指定,那么會假定為是opendir()所打開的最后一個句柄

    <?php$dir = opendir('test');closedir($dir);?>

    readdir()

      readdir()函數(shù)用于從目錄句柄中讀取條目,返回目錄中下一個文件的文件名。文件名以在文件系統(tǒng)中的排序返回,失敗時返回 FALSE

    string readdir ([ resource $dir_handle ] )

      在www目錄下新建目錄test,并在目錄test下新建a.txt和b.txt文件

    <?php$dir = opendir('test');echo readdir($dir).'<br>';//.echo readdir($dir).'<br>';//..echo readdir($dir).'<br>';//a.txtecho readdir($dir).'<br>';//b.txtecho readdir($dir).'<br>';//closedir($dir);?>

      在遍歷目錄時,每個目錄的前兩個返回值都是.和..,.代表當(dāng)前目錄,..代表上一級目錄

      所以,一般地,列出當(dāng)前目錄的所有文件并去掉 . 和 ..,常采用下面的代碼

    <?phpif ($handle = opendir('test')) {    while (false !== ($file = readdir($handle))) {        if ($file != '.' && $file != '..') {            echo '$file';        }    }    closedir($handle);}?>

      接下來,在test目錄下,新建一個目錄in,并在in目錄中新建文件c.txt。然后,目錄和文件區(qū)分顯示

      [注意]通過is_dir()函數(shù)判斷目錄時,需要加入路徑

    <?phpif ($handle = opendir('test')) {    while (false !== ($file = readdir($handle))) {        if ($file != '.' && $file != '..') {            $file = 'test/'.$file;            if(is_dir($file)){                echo '目錄:'.$file.'<br>';            }else{                echo '文件:'.$file.'<br>';            }        }    }    closedir($handle);}/*文件:test/a.txt文件:test/b.txt目錄:test/in */?>    

    rewinddir()

      rewinddir()函數(shù)用于倒回目錄句柄,將參數(shù)dir_handle指定的目錄流重置到目錄的開頭

    void rewinddir ( resource $dir_handle )

      如果不使用rewinddir()函數(shù),則文件只能遍歷一次

    <?phpif ($handle = opendir('test')) {    while (false !== ($file = readdir($handle))) {        if ($file != '.' && $file != '..') {            $file = 'test/'.$file;            if(is_dir($file)){                echo '目錄:'.$file.'<br>';            }else{                echo '文件:'.$file.'<br>';            }        }    }    while (false !== ($file = readdir($handle))) {        if ($file != '.' && $file != '..') {            $file = 'test/'.$file;            if(is_dir($file)){                echo '目錄:'.$file.'<br>';            }else{                echo '文件:'.$file.'<br>';            }        }    }    closedir($handle);}/*文件:test/a.txt文件:test/b.txt目錄:test/in */?>

      使用rewinddir()函數(shù),可以把目錄句柄返回到第一個文件,從而實現(xiàn)重新遍歷

    <?phpif ($handle = opendir('test')) {    while (false !== ($file = readdir($handle))) {        if ($file != '.' && $file != '..') {            $file = 'test/'.$file;            if(is_dir($file)){                echo '目錄:'.$file.'<br>';            }else{                echo '文件:'.$file.'<br>';            }        }    }    rewinddir($handle);    while (false !== ($file = readdir($handle))) {        if ($file != '.' && $file != '..') {            $file = 'test/'.$file;            if(is_dir($file)){                echo '目錄:'.$file.'<br>';            }else{                echo '文件:'.$file.'<br>';            }        }    }    closedir($handle);}/*文件:test/a.txt文件:test/b.txt目錄:test/in文件:test/a.txt文件:test/b.txt目錄:test/in */?>

    目錄統(tǒng)計

    disk_total_space()

      disk_total_space()函數(shù)返回一個目錄的磁盤總大小

    float disk_total_space ( string $directory )
    <?php$ds = disk_total_space('C:');echo $ds.'<br>';//126652637184$ds = disk_total_space('D:');echo $ds;//1000202240000?>

    disk_free_space()

      disk_free_space()函數(shù)返回目錄中的可用空間

    float disk_free_space ( string $directory )
    <?php$ds = disk_free_space('C:');echo $ds.'<br>';//86087041024$ds = disk_free_space('D:');echo $ds;//481647472640?>

      下面來統(tǒng)計在www文件夾下新建的test目錄的個數(shù)

    <?php    $dirn = 0; //目錄數(shù)    $filen = 0; //文件數(shù)    //統(tǒng)計一個目錄下的文件和目錄的個數(shù)    function getdirnum($file) {        global $dirn;        global $filen;            $dir = opendir($file);        while (false !== ($filename = readdir($dir))) {            if($filename!='.' && $filename !='..') {                $filename = $file.'/'.$filename; //更新路徑                if(is_dir($filename)) {                    $dirn++;                    getdirnum($filename);  //遞歸,就可以查看所有子目錄                } else {                    $filen++;                 }            }        }        closedir($dir);    }    getdirnum('test');    echo '目錄數(shù)為:{$dirn}<br>';//目錄數(shù)為:1    echo '文件數(shù)為:{$filen}<br>';//文件數(shù)為:3?>

      下面來統(tǒng)計在www文件夾下新建的test目錄的大小

    <?php    //統(tǒng)計目錄大小    function dirsize($file) {        $size = 0;        $dir = opendir($file);        while(false !== ($filename = readdir($dir))) {            if($filename!='.' && $filename !='..') {                $filename = $file.'/'.$filename;                if(is_dir($filename)) {                    $size += dirsize($filename);//使用遞歸                } else {                    $size += filesize($filename);                }            }        }        closedir($dir);        return $size;    }echo 'test目錄大小為:'.dirsize('test').'<br>';//test目錄大小為:302?>

    目錄增刪

    mkdir()

      mkdir()函數(shù)用于新建目錄 

    bool mkdir ( string $pathname [, int $mode = 0777 [, bool $recursive = false [, resource $context ]]] )

    rmdir()

      rmdir()函數(shù)用于刪除目錄

    bool rmdir ( string $dirname [, resource $context ] )

      [注意]該目錄必須是空的,而且要有相應(yīng)的權(quán)限。失敗時會產(chǎn)生一個 E_WARNING 級別的錯誤

    unlink()

      unlink()函數(shù)用于刪除文件

    bool unlink ( string $filename [, resource $context ] )

      下面來清空test目錄

    <?php    function deldir($dirname) {        //如果是文件,直接刪除即可        if(is_file($dirname)) {            unlink($dirname);        }        $dir = opendir($dirname);        while(FALSE !== ($filename = readdir($dir))) {            if($filename !='.' && $filename!='..') {                $filename = $dirname.'/'.$filename;                if(is_dir($filename)) {                    deldir($filename);//遞歸                }else {                    unlink($filename);//刪除文件                }            }        }        closedir($dir);        if($dirname != 'test'){            rmdir($dirname);//刪除目錄        }    }    deldir('test');?>

    目錄復(fù)制

    copy()

      copy()函數(shù)用于拷貝文件 

    bool copy ( string $source , string $dest [, resource $context ] )

      [注意]copy()函數(shù)不能用于復(fù)制目錄

    <?php$file = 'a.txt';$newfile = 'a.bak';copy($file, $newfile);?>

    rename()

      rename()函數(shù)用于重命名一個文件或目錄

    bool rename ( string $oldname , string $newname [, resource $context ] )

      [注意]rename()函數(shù)具有移動文件或目錄的功能

      下面把www目錄下的test目錄剪貼,命名為t,并移動到d盤目錄下

    <?phprename('test', 'd:/t');?>

      使用rename()只能實現(xiàn)剪切的操作,使用copy()只能復(fù)制文件。如果要復(fù)制目錄,則需要使用循環(huán)和遍歷

    <?php    /**     * $dirsrc  原目錄     * $dirto  目標(biāo)目錄     */    function copydir($dirsrc, $dirto) {        //如果目錄不存在,則新建一個目錄        if(!file_exists($dirto)) {            mkdir($dirto);        }        $dir = opendir($dirsrc);        while(FALSE !== ($filename = readdir($dir))) {            if($filename != '.' && $filename !='..') {                $srcfile = $dirsrc.'/'.$filename;  //原文件                $tofile = $dirto.'/'.$filename;    //目標(biāo)文件                if(is_dir($srcfile)) {                    copydir($srcfile, $tofile);  //遞歸處理所有子目錄                }else{                    copy($srcfile, $tofile);//復(fù)制文件                }            }        }    }    copydir('test', 'd:/t');?>

    文件操作

    touch()

      touch()函數(shù)用來設(shè)定文件的訪問和修改時間。如果文件不存在,則會被創(chuàng)建。成功時返回 TRUE, 或者在失敗時返回 FALSE

    bool touch ( string $filename [, int $time = time() [, int $atime ]] )

      參數(shù)filename表示要設(shè)定的文件名,time表示要設(shè)定的時間。如果沒有提供參數(shù) time 則會使用當(dāng)前系統(tǒng)的時間;atime表示如果給出了這個參數(shù),則給定文件的訪問時間會被設(shè)為atime,否則會設(shè)置為time。如果沒有給出這兩個參數(shù),則使用當(dāng)前系統(tǒng)時間

    <?php    touch('abc.txt')?>

    copy()

      copy()函數(shù)用于拷貝文件

    bool copy ( string $source , string $dest [, resource $context ] )

      [注意]copy()函數(shù)不能用于復(fù)制目錄

    <?php$file = 'a.txt';$newfile = 'a.bak';copy($file, $newfile);?>

    rename()

      rename()函數(shù)用于重命名一個文件或目錄

    bool rename ( string $oldname , string $newname [, resource $context ] )

      [注意]rename()函數(shù)具有移動文件或目錄的功能

    <?phprename('abc.txt', 'd:/cba.txt');?>

    unlink()

      unlink()函數(shù)用于刪除文件

    bool unlink ( string $filename [, resource $context ] )
    <?phpunlink('d:/cba.txt');?>

    文件內(nèi)容

    fopen()

      fopen()函數(shù)用于打開文件或者URL,fopen()將 filename 指定的名字資源綁定到一個流上

      fopen() 中 mode 的可能值列表

    mode      說明'r'       只讀方式打開,將文件指針指向文件頭。'r+'      讀寫方式打開,將文件指針指向文件頭。'w'       寫入方式打開,將文件指針指向文件頭并將文件大小截為零。如果文件不存在則嘗試創(chuàng)建之。'w+'      讀寫方式打開,將文件指針指向文件頭并將文件大小截為零。如果文件不存在則嘗試創(chuàng)建之。'a'       寫入方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創(chuàng)建之。'a+'      讀寫方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創(chuàng)建之。
    <?php    //使用絕對路徑打開file.txt文件,選擇只讀模式,并返回資源$handle    $handle = fopen('/home/rasmus/file.txt', 'r');    //訪問文檔根目錄下的文件,也以只讀模式打開    $handle = fopen(“{$_SERVER['DOCUMENT_ROOT']}/data/info.txt', 'r');    //在 Windows 平臺上,轉(zhuǎn)義文件路徑中的每個反斜線,或者用斜線,      以二進制和只寫模式組合    $handle = fopen('c:/data/file.gif', 'wb');    //使用相對路徑打開file.txt文件,選擇只讀模式,并返回資源$handle    $handle = fopen('../data/info.txt', 'r');    //打開遠程文件, 使用HTTP協(xié)議只能以只讀的模式打開    $handle = fopen('http://www.example.com/', 'r');    //使用FTP協(xié)議打開遠程文件,如果FTP服務(wù)器可寫,則可以以寫的模式打開    $handle = fopen('ftp://user:password@example.com/somefile.txt', 'w');?>

    fclose()

      fclose()函數(shù)用于關(guān)閉一個已打開的文件指針

    bool fclose ( resource $handle )
    <?php$handle = fopen('test/a.txt', 'r');fclose($handle);?>

    fwrite()

      fwrite()函數(shù)用于寫入文件(可安全用于二進制文件),返回寫入的字符數(shù),出現(xiàn)錯誤時則返回 FALSE

    int fwrite ( resource $handle , string $string [, int $length ] )

      當(dāng)打開方式為只讀模式時,無法向文件寫入字符

    <?php$fp = fopen('test/a.txt', 'r');echo fwrite($fp, '1');//0echo '<br>';echo fwrite($fp, '23');//0echo '<br>';fclose($fp);?>

      當(dāng)打開方式為寫模式時,可以向文件寫入字符

    <?php$fp = fopen('test/a.txt', 'w');echo fwrite($fp, '1');//1echo '<br>';echo fwrite($fp, '23');//2echo '<br>';fclose($fp);/*文件內(nèi)容為123 */?>

      當(dāng)打開方式為追加模式時,將向文件的尾部追加新的字符

    <?php$fp = fopen('test/a.txt', 'a');echo fwrite($fp, '1');//1echo '<br>';echo fwrite($fp, '23');//2echo '<br>';fclose($fp);/*刷新兩次時,文件內(nèi)容為123123 */?>

    fgetc()

      fgetc()函數(shù)用于從文件指針中讀取字符

      [注意]使用fgetc()函數(shù)時,需要在fopen()函數(shù)中使用讀模式

    string fgetc ( resource $handle )
    <?php$fp = fopen('test/a.txt', 'r');echo fgetc($fp);//1echo fgetc($fp);//2echo fgetc($fp);//3fclose($fp);?>

    feof()

      feof()函數(shù)用于測試文件指針是否到了文件結(jié)束的位置

    bool feof ( resource $handle )
    <?php$fp = fopen('test/a.txt', 'r');while(!feof($fp)){    echo fgetc($fp);//123123}fclose($fp);?>

    fgets()

      fgets()函數(shù)用于從文件指針中讀取一行

    string fgets ( resource $handle [, int $length ] )

      將test目錄下的a.txt文件內(nèi)容修改為

    aabbb
    <?php$fp = fopen('test/a.txt', 'r');echo fgets($fp);//'aa'echo fgets($fp);//'bbb'echo fgets($fp);//''fclose($fp);?>

    fread()

      fread()函數(shù)用于讀取文件(可安全用于二進制文件)。fread()從文件指針handle讀取最多l(xiāng)ength個字節(jié)。該函數(shù)在讀取了length個字節(jié)或到達了文件末尾(EOF)時將停止讀取文件

    string fread ( resource $handle , int $length )
    <?php$fp = fopen('test/a.txt', 'r');echo fread($fp,3);//'aa 'fclose($fp);$fp = fopen('test/a.txt', 'r');echo fread($fp,filesize('test/a.txt'));//'aa bbb'fclose($fp);?>

    fseek()

      fseek()函數(shù)用于在文件指針中定位,成功則返回 0;否則返回 -1

    int fseek ( resource $handle , int $offset [, int $whence = SEEK_SET ] )    

      將test目錄下的a.txt文件內(nèi)容修改為'12345'

    <?php$fp = fopen('test/a.txt', 'r');echo fgetc($fp);//'1'fseek($fp,4);echo fgetc($fp);//'5'fclose($fp);?>
    <?php$fp = fopen('test/a.txt', 'r');echo fread($fp,2).'<br>';//12fseek($fp,4);echo fread($fp,2).'<br>';//5fseek($fp,-3,SEEK_END);echo fread($fp,2).'<br>';//34fclose($fp);?>

    ftell()

      ftell()函數(shù)用于返回文件指針讀/寫的位置 

    int ftell ( resource $handle )
    <?php$fp = fopen('test/a.txt', 'r');echo ftell($fp);//0fgetc($fp);echo ftell($fp);//1fseek($fp,4);echo ftell($fp);//4fclose($fp);?>

    rewind()

      rewind()函數(shù)用于倒回文件指針的位置,將handle的文件位置指針設(shè)為文件流的開頭

    bool rewind ( resource $handle )
    <?php$fp = fopen('test/a.txt', 'r');fseek($fp,2);echo ftell($fp);//2rewind($fp);echo ftell($fp);//0?>

    file_get_contents()

      file_get_contents()函數(shù)用于將整個文件讀入一個字符串

    string file_get_contents ( string $filename [, bool $use_include_path = false [, resource $context [, int $offset = -1 [, int $maxlen ]]]] )
    <?php$homepage = file_get_contents('test/a.txt');echo $homepage;//'12345'?>

      頁面變?yōu)榘俣仁醉?/p>

    <?php$homepage = file_get_contents('http://www.baidu.com/');echo $homepage;?>

    file_put_contents()

      file_put_contents()函數(shù)用于將一個字符串寫入文件

    int file_put_contents ( string $filename , mixed $data [, int $flags = 0 [, resource $context ]] )

      使用該函數(shù)和依次調(diào)用 fopen(),fwrite() 以及 fclose() 功能一樣

      [注意]默認(rèn)為寫模式,若設(shè)置第三個參數(shù)為FILE_APPEND,則變?yōu)樽芳幽J?/p>

    <?phpfile_put_contents('test/a.txt','abc');?>

    readfile()

      readfile()函數(shù)用于讀取文件并寫入到輸出緩沖

    int readfile ( string $filename [, bool $use_include_path = false [, resource $context ]] )
    <?phpreadfile('http://www.baidu.com/');//頁面中顯示百度首頁?><?phpreadfile('test/a.txt');//頁面中顯示abc?>

    file()

      file()函數(shù)用于把整個文件讀入一個數(shù)組中,每一行作為一個數(shù)組的元素

    array file ( string $filename [, int $flags = 0 [, resource $context ]] )

      將a.txt的文件內(nèi)容改為每一行一個數(shù)字,分別是1、2、3、4、5、6、7、8、9

    <?php$arr = file('test/a.txt',0);echo $arr[0].'<br>';//1echo count($arr);//9?>

    ftruncate()

      ftruncate()函數(shù)用于將文件截斷到給定的長度

    bool ftruncate ( resource $handle , int $size )

      [注意]使用ftruncate()函數(shù)時,需要使用追加模式。經(jīng)測試,使用讀模式時無效,使用寫模式時,文件內(nèi)容被清空

    <?php$fp = fopen('test/a.txt','a');ftruncate($fp,100);?>
    PHP編程

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

  • 發(fā)表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發(fā)表
    天堂资源在线视频| 99reav| 亚洲国产精品精华液ab| 亚洲福利视频在线| 日韩一区二区三区色| 亚洲国产aⅴ成人精品无吗| 成人影院在线观看| 欧美在线视频全部完| 日韩欧美亚洲视频| 99久久国产免费| 精品久久久久成人码免费动漫| 国产一区高清| 人妻丰满熟妇av无码区app| yw视频在线观看| 精品亚洲夜色av98在线观看| 成人h猎奇视频网站| 在线视频一区二区三区| 偷拍夫妻性生活| 日本不卡一二三区黄网| 日本少妇高潮喷水xxxxxxx| 亚洲国产高清一区二区三区| 亚洲精品自产拍在线观看app| 久草在线免费福利资源| 久久精品视频6| 国产精品户外野外| 亚洲图片123| 深夜福利视频一区| jlzzjlzz国产精品久久| 污视频网站在线观看| 日本孕妇大胆孕交无码| 日韩免费av一区二区| 国产黄色一级电影| 波多野结衣在线网站| 国产视频2区| 国产精品186在线观看在线播放| 蜜芽视频在线观看| 日韩欧美精品综合| 岛国精品视频在线播放| 欧美精品一区二区三区涩爱蜜| 国产丝袜控视频在线观看| 午夜免费激情视频| 欧美一区二区三区红桃小说| 精品精品国产高清一毛片一天堂| 国产精品久久久久久久久粉嫩av| 国产在线精品一区二区不卡了| 精品国产一区二区三区久久久蜜臀| 日本亚洲欧洲精品| www黄色在线观看| 亚洲毛片在线| 亚洲日本aⅴ片在线观看香蕉| 国产麻豆精品高清在线播放| 一区二区久久精品| 成年人在线观看视频| jizzjizz少妇亚洲水多| 日本sm残虐另类| 午夜精品福利一区二区三区av| 国产精品久久久久久久7电影| 日韩欧美一区三区| 久久精品国产一区二区三区不卡| 日本不卡视频在线观看| 成人h小游戏| 美女网站色精品尤物极品姐弟| 欧美高清中文字幕| 日韩国产网站| 日韩一区免费观看| 9999精品成人免费毛片在线看| 性欧美xxxx免费岛国不卡电影| 国产美女永久免费无遮挡| 手机av在线不卡| 在线视频中文字幕一区二区| 依依综合在线| 色婷婷国产精品综合在线观看| 国产乱一区二区| 中文字幕久精品免费视频| 国产精品91久久久| 黄色免费在线播放| 黄色av一级片| 惠美惠精品网| www.天堂av.com| 麻豆精品99| 欧美激情精品久久久久久大尺度| 五月天激情播播| 久久成人小视频| 欧美日韩一区二区三区在线播放| 亚洲午夜久久久久久久国产| 国产精品一级| 男人av在线播放| 无码国产精品一区二区高潮| 久久久久久国产精品一区| 毛片视频免费| 天海翼一区二区三区免费| 永久免费毛片在线观看| 国产亚洲精品一区二区在线观看| 黑人巨大40cm重口| 国内一区二区在线视频观看| 毛片久久久久久| av影院在线播放| 国产成人免费视频网站| jizzjizz4| 日本高清不卡一区二区三区视频| 精品无码m3u8在线观看| av影视在线| 尤蜜粉嫩av国产一区二区三区| 欧美美乳视频网站在线观看| 日韩免费视频一区| 国产精品久久久久久久泡妞| 中文字幕免费观看视频| 中文字幕在线观| 9999精品视频| 精品国产日韩欧美| 无码人妻一区二区三区线| 国产精品国产福利国产秒拍| 天堂中文字幕——hd| 亚洲另类av| 久久夜色精品国产噜噜亚洲av| 国产探花一区二区| 欧美丝袜一区二区三区| 在线国产福利| 蜜臀av性久久久久蜜臀aⅴ四虎| 国产一区二区三区视频在线| jizzjizz国产精品喷水| 国产麻豆a毛片| 亚洲成人av片在线观看| 亚洲人永久免费| 在线观看日韩中文字幕| 成年人免费看毛片| 成人在线视频免费| 一卡二卡在线观看| 色综合久久久久综合体| 一级特黄录像免费播放全99| 捆绑紧缚一区二区三区视频| 日本大片在线观看| 欧美精品日日操| 国产精品久久久久影院日本| 一区二区三区小视频| 久久亚洲国产成人精品无码区| 欧美一区二区| 狠狠色噜噜狠狠狠狠97| 精品91自产拍在线观看一区| 国产亚洲一区二区三区不卡| 色88888久久久久久影院| 国产中文字幕在线免费观看| 九九九久久国产免费| 91精品久久久久久久久久久| 日韩电影免费观看| 亚洲视频一二区| 日韩成人激情视频| 在线电影av| 国产视频在线视频| 欧美乱妇40p| 久久er视频| 日韩在线综合| 91精品国产综合久久国产大片| 精品人妻一区二区三区免费| 国产在线精彩视频| 超碰精品一区二区三区乱码| 一区二区精品区| 精品国产一区二区三区久久久樱花| 7777久久亚洲中文字幕| 777777av| 亚洲精品视频一区二区| 欧美一级特黄aaaaaa| 五月天亚洲综合情| 五月天丁香社区| 青青草原播放器| 黑鬼狂亚洲人videos| 国产精品国产亚洲伊人久久| 亚洲一区二区成人| 国产精品久久久久77777丨| 欧美 亚欧 日韩视频在线| 欧美精品一区二区三| 看黄的a网站| 日本韩国欧美一区| 精品一区二区三区高清免费不卡| 久久久久久九九九九九| 制服丝袜av成人在线看| 欧美激情一区二区三区免费观看| 99精品国产99久久久久久97| 亚洲小说区图片区| 久久久一区二区| 手机在线视频你懂的| 成人精品一区二区三区校园激情| 波多野结衣一本| 一区二区亚洲欧洲国产日韩| 久久av超碰| 日韩美女主播在线视频一区二区三区| 99热国内精品永久免费观看| 911福利视频| 欧美激情精品久久久久久大尺度| 欧美性猛片aaaaaaa做受| 国产精品电影久久久久电影网| 欧美日韩三区四区| 青青久在线视频| 鲁鲁视频www一区二区| 国产精品天堂蜜av在线播放| 男人插女人视频在线观看| 在线成年人视频| 久久久久久久久久久91| 欧美巨乳在线观看| 无码人妻丰满熟妇区五十路| 暴力调教一区二区三区| 国产精品久久久亚洲一区| 日韩av在线一区二区三区| 中文在线观看免费视频| 国产精品沙发午睡系列990531| 影音先锋日韩在线| 99久久国产热无码精品免费| 欧美精品一区二区三区四区| 免费高清完整在线观看| 欧美成人一区二区三区| 国产精品videosex性欧美| 久久99精品久久久野外观看| 色天使综合视频| 人人爽久久涩噜噜噜网站| 中文字幕在线观| 狠狠色丁香婷综合久久| 国产一区二区三区三区在线观看| 久草资源站在线观看| 中文字幕精品三区| 四虎永久精品在线| 国产欧美精品va在线观看| 欧美大胆性生话| 一级片中文字幕| 国产一区二区三区四区在线观看| 91自拍.com| 国产亚洲欧美精品久久久www| 头脑特工队2免费完整版在线观看| 不卡一区二区三区四区| 亚洲精品婷婷| 26uuu另类亚洲欧美日本一| 中文字幕成人在线观看| 久久国产精品久久精品国产| 成人小视频在线播放| 国产国语性生话播放| 毛片基地一级大毛片| 大陆极品少妇内射aaaaaa| 欧美日韩的一区二区| 真实原创一区二区影院| 希岛爱理av一区二区三区| 精品国产导航| 亚洲九九精品| 亚洲一区在线视频观看| 国产精品久久久久久久裸模| 久久不见久久见国语| av成人在线看| 高清不卡日本v二区在线| 亚洲香蕉久久| 色综合久久五月天| 日本精品一区二区三区在线播放视频| 三级黄色片在线观看| 九色一区二区| 国产在线www| 免费福利电影| 精品少妇人妻av一区二区| 亚洲欧洲精品在线| rebdb初裸写真在线观看| 日韩视频在线观看一区二区| 一区二区不卡在线播放| 国产美女久久久久久| 丝袜国产日韩另类美女| 色内内免费视频播放| 嫩草av久久伊人妇女超级a| 国产精品久久夜| 久久中文字幕无码| www.成人在线.com| 韩国三级电影一区二区| 欧美国产日韩中文字幕在线| 国产片一区二区| 欧美老女人在线| 性生生活性生交a级| 日韩欧美在线一区二区三区| 青草国产精品久久久久久| 日韩在线中文视频| 日韩在线观看一区二区三区| 伊人av在线| 欧美三级在线播放| 日韩毛片无码永久免费看| 成人a视频在线观看| 91www在线观看| 国产精品97| 91黄色激情网站| 久久精品国产一区二区三区免费看| 欧美激情区在线播放| 欧美人与禽猛交乱配| 亚洲av无码乱码国产精品| 97蝌蚪自拍自窝| 国产欧美精品一区二区三区| 亚洲人在线视频| 国产精品一区二区美女视频免费看| 久久亚洲国产中v天仙www| 日韩一区二区三区在线视频| 天天做天天爱天天高潮| 久久久九九九九| 久久久久久网| 成人全视频在线观看在线播放高清| 亚洲精品一区二区三区在线| 一级欧洲+日本+国产| 亚洲精品第一国产综合野草社区| 久久深夜福利| 亚洲无码精品在线播放| 婷婷激情成人| 黄色一级在线视频| 精品亚洲成a人| 国产欧美日本一区二区三区| 国产乱淫av片杨贵妃| 亚洲变态欧美另类捆绑| 两个人免费视频观看日本| 777777777亚洲妇女| 污视频在线看网站| 日韩经典在线观看| 97久久综合区小说区图片区| 国产在线观看一区| 亚洲在线观看| 国产裸体美女永久免费无遮挡| 亚洲一区二区精品| 国产精品久久久久久久久快鸭| 色播色播色播色播色播在线| 国产精品久久精品视| 成人精品3d动漫| 国产视频一区欧美| xxxxx性欧美特大| 亚洲午夜天堂| 亚洲人在线观看视频| 色妞ww精品视频7777| 中文乱码免费一区二区三区下载| 国产日韩精品在线播放| 亚洲欧美自拍另类日韩| 亚洲精品免费网站|