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

首頁 > 編程 > PHP > 正文

PHP文件操作函數有哪些?php常用文件操作函數的總結(附代碼)

2020-03-22 17:52:26
字體:
來源:轉載
供稿:網友
php文件操作函數有很多種,今天在這里我將給大家分享一下PHP常用的文件操作函數,話不多說,讓我們來看一看PHP文件操作究竟有哪些函數吧。

1 php獲得文件名:
basename — 返回路徑中的文件名部分

給出一個包含有指向一個文件的全路徑的字符串,本函數返回基本的文件名。如果文件名是以 suffix 結束的,那這一部分也會被去掉。

string basename ( string $path [, string $suffix ] )

$path = /home/cate/index/index2.php $file = basename($path);echo $file. br //index2.php
$file2 = basename($path, .php echo $file2; //index2
$file3 = basename($path, 2.php echo $file2; //index

2 php獲得目錄名

dirname — 返回路徑中的目錄部分

string dirname ( string $path )

給出一個包含有指向一個文件的全路徑的字符串,本函數返回去掉文件名后的目錄名。

echo dirname(__FILE__);

__FILE__指向當前文件所在的路徑 等同于 getcwd();

3 php得到路徑關聯數組

pathinfo — 返回文件路徑的信息

pathinfo() 返回一個關聯數組包含有 path 的信息。包括以下的數組單元:dirname,basename 和 extension。

可以通過參數 options 指定要返回哪些單元。它們包括:PATHINFO_DIRNAME,PATHINFO_BASENAME 和 PATHINFO_EXTENSION。默認是返回全部的單元。如果不是要求取得所有單元,則本函數返回字符串。

 ?php$path_parts = pathinfo( /home/cate/index.action.html // /home/cate 文件目錄echo $path_parts[ dirname ] . br/ // index.action.html 文件名echo $path_parts[ basename ] . br/ // html 擴展名echo $path_parts[ extension ] . br/ //直接獲取擴展名 echo pathinfo( /home/cate/index.action.html , PATHINFO_EXTENSION);

4 fopen函數— 打開文件或者 URL

resource fopen ( string $filename , string $mode [, bool $use_include_path [, resource $zcontext ]] )

r

只讀方式打開,將文件指針指向文件頭。

r+

讀寫方式打開,將文件指針指向文件頭。

w

寫入方式打開,將文件指針指向文件頭并將文件大小截為零。如果文件不存在則嘗試創建之。

w+

讀寫方式打開,將文件指針指向文件頭并將文件大小截為零。如果文件不存在則嘗試創建之。

a

寫入方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創建之。

a+

讀寫方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創建之。

x

創建并以寫入方式打開,將文件指針指向文件頭。如果文件已存在,則 fopen() 調用失敗并返回 FALSE,并生成一條 E_WARNING 級別的錯誤信息。如果文件不存在則嘗試創建之。這和給 底層的 open(2) 系統調用指定 O_EXCL|O_CREAT 標記是等價的。此選項被 PHP 4.3.2 以及以后的版本所支持,僅能用于本地文件。

x+

創建并以讀寫方式打開,將文件指針指向文件頭。如果文件已存在,則 fopen() 調用失敗并返回 FALSE,并生成一條 E_WARNING 級別的錯誤信息。如果文件不存在則嘗試創建之。這和給 底層的 open(2) 系統調用指定 O_EXCL|O_CREAT 標記是等價的。此選項被 PHP 4.3.2 以及以后的版本所支持,僅能用于本地文件。

 ?php$handle = fopen( doc.txt , r  var_dump($handle);

D:/wamp/www/test/jsontest.php:3:resource(3, stream)

 ?php$file = fopen( newtxt.txt , w )or die( 無法打開文件 //不存在則自動創建 $data = you are a coder!  fwrite($file,$data); $data = you are a MAN!  fwrite($file,$data); fclose($file);

5 fstat函數— 通過已打開的文件指針取得文件信息

array fstat ( resource $handle )

獲取由文件指針 handle 所打開文件的統計信息。本函數和 stat() 函數相似,除了它是作用于已打開的文件指針而不是文件名。

返回一個數組具有該文件的統計信息,該數組的格式詳細說明于手冊中 stat() 頁面里。

 ?php// 打開文件$fp = fopen( doc.txt , r // 取得統計信息$fstat = fstat($fp);// 關閉文件fclose($fp);// 只顯示關聯數組部分//print_r(array_slice($fstat, 13)); print_r($fstat); //獲取一個文件信息數組包括索引和關聯數組

array_slice — 從數組中取出一段 返回數組

array array_slice ( array $array , int $offset [, int $length [, bool $preserve_keys ]] )

array_slice() 返回根據 offset 和 length 參數所指定的 array 數組中的一段序列。

如果 offset 非負,則序列將從 array 中的此偏移量開始。如果 offset 為負,則序列將從 array 中距離末端這么遠的地方開始。

如果給出了 length 并且為正,則序列中將具有這么多的單元。如果給出了 length 并且為負,則序列將終止在距離數組末端這么遠的地方。如果省略,則序列將從 offset 開始一直到 array 的末端。

 ?php$input = array( a , b , c , d , e $output = array_slice($input, 2); // returns c , d , and e $output = array_slice($input, -2, 1); // returns d $output = array_slice($input, 0, 3); // returns a , b , and c // note the differences in the array keysprint_r(array_slice($input, 2, -1));print_r(array_slice($input, 2, -1, true));

Array

(

[0] = c

[1] = d

)

Array

(

[2] = c

[3] = d

)

6 filesize函數— 取得文件大小

int filesize ( string $filename )

返回文件大小的字節數,如果出錯返回 FALSE 并生成一條 E_WARNING 級的錯誤。

 ?php$filename = doc.txt echo $filename. : .filesize($filename). bytes 

doc.txt:46bytes

7.disk_free_space函數— 返回目錄中的可用空間

float disk_free_space ( string $directory )

給出一個包含有一個目錄的字符串,本函數將根據相應的文件系統或磁盤分區返回可用的字節數。

 ?phpecho disk_free_space( C: ). br/ echo disk_free_space( D: ). br/ echo disk_free_space( / 

71001600000
186459181056

disk_total_space — 返回一個目錄的磁盤總大小

8 fileatime函數— 取得文件的上次訪問時間

filectime — 取得文件的 inode 修改時間

filemtime — 取得文件修改時間

9 file函數— 把整個文件讀入一個數組中

 ?php$myfile = doc.txt $lines = file($myfile);for($i=0,$len = count($lines);$i $len;$i++){ echo mb_convert_encoding($lines[$i], UTF-8 , GBK ). br/ }

我是一個新手程序員,需要慢慢努力才能有所收獲1!
我是一個新手程序員,需要慢慢努力才能有所收獲2!
我是一個新手程序員,需要慢慢努力才能有所收獲3!
我是一個新手程序員,需要慢慢努力才能有所收獲4!
我是一個新手程序員,需要慢慢努力才能有所收獲5!
我是一個新手程序員,需要慢慢努力才能有所收獲6!

mb_convert_encoding($lines[$i], UTF-8 , GBK )

將每一行原來的WINDOWS下GBK格式的數據$lines[$i]轉換為UTF-8格式

string mb_convert_encoding ( string $str , string $to_encoding [, mixed $from_encoding ] )

 ?php$myfile = doc.txt $encoding = mb_detect_encoding($myfile, array( GBK , UTF-16 , UCS-2 , UTF-8 , BIG5 , ASCII echo $encoding;

CP936 即GBK

mb_detect_encoding — 偵測字符集 第一個為文件或者路徑 第二個為可能的字符集

10 fgets函數— 從文件指針中讀取一行

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

從 handle 指向的文件中讀取一行并返回長度最多為 length - 1 字節的字符串。碰到換行符(包括在返回值中)、EOF 或者已經讀取了 length - 1 字節后停止(看先碰到那一種情況)。如果沒有指定 length,則默認為 1K,或者說 1024 字節。

出錯時返回 FALSE。

 ?php$handle = fopen( doc.txt , r if ($handle){ while (!feof($handle)){ $data[] = fgets($handle,1024); print_r($data); fclose($handle);}
Array [0] = 我是一個新手程序員,需要慢慢努力才能有所收獲1! [1] = 我是一個新手程序員,需要慢慢努力才能有所收獲2! [2] = 我是一個新手程序員,需要慢慢努力才能有所收獲3! [3] = 我是一個新手程序員,需要慢慢努力才能有所收獲4! [4] = 我是一個新手程序員,需要慢慢努力才能有所收獲5! [5] = 我是一個新手程序員,需要慢慢努力才能有所收獲6!)

feof — 測試文件指針是否到了文件結束的位置

如果服務器沒有關閉由 fsockopen() 所打開的連接,feof() 會一直等待直到超時而返回 TRUE。默認的超時限制是 60 秒,可以使用 stream_set_timeout() 來改變這個值。

fclose — 關閉一個已打開的文件指針

11 fgetss函數—— 從文件指針中讀取一行并過濾掉 HTML 標記
和 fgets() 相同,只除了 fgetss 嘗試從讀取的文本中去掉任何 HTML 和 PHP 標記。

可以用可選的第三個參數指定哪些標記不被去掉

file_exists — 檢查文件或目錄是否存在

bool file_exists ( string $filename )

如果由 filename 指定的文件或目錄存在則返回 TRUE,否則返回 FALSE。

12 file_put_contents函數— 將一個字符串寫入文件

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

和依次調用 fopen(),fwrite() 以及 fclose() 功能一樣。

filename 要寫入數據的文件名
data 要寫入的數據。類型可以是 string,array(但不能為多維數組),或者是 stream 資源
flags 可選,規定如何打開/寫入文件??赡艿闹担?br>FILE_USE_INCLUDE_PATH:檢查 filename 副本的內置路徑
FILE_APPEND:在文件末尾以追加的方式寫入數據
LOCK_EX:對文件上鎖
context 可選,Context是一組選項,可以通過它修改文本屬性

fopen() - 打開文件或者 URL

fwrite() - 寫入文件(可安全用于二進制文件)

file_get_contents() - 將整個文件讀入一個字符串

 ?phpecho file_put_contents( doc.txt , 你是一個程序員7 ,FILE_APPEND);

返回字節數22

如果文件不存在,則創建文件,相當于fopen()函數行為。

如果文件存在,默認將清空文件內的內容,可設置 flags 參數值為 FILE_APPEND 以避免。

file_put_contents 函數可安全用于二進制對象。

如果對于確定已經存在的文件,最好進行一個判斷

if (file_exists( test.txt )) { file_put_contents( test.txt , contents }

相關推薦:

php文件操作的方法及實例詳解

以上就是PHP文件操作函數有哪些?php常用文件操作函數的總結(附代碼)的詳細內容,PHP教程

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久久久久97| 亚洲欧洲日产国产网站| 久久国产精彩视频| 日韩精品丝袜在线| 亚洲福利在线视频| 97香蕉超级碰碰久久免费的优势| 亚洲国产精久久久久久| 精品久久久在线观看| 亚洲国产美女精品久久久久∴| 成人免费视频网址| 亚洲人成电影网站色xx| 亚洲精品国精品久久99热一| 欧美成人性色生活仑片| 日韩精品在线第一页| 久久av.com| 日韩免费在线免费观看| 欧美精品一本久久男人的天堂| 日本中文字幕久久看| 中文字幕精品av| 97国产在线观看| 久久免费在线观看| 欧美精品精品精品精品免费| 久久免费视频网站| 久久夜色精品亚洲噜噜国产mv| 亚洲人在线观看| 少妇高潮久久久久久潘金莲| 97av视频在线| 亚洲第一免费播放区| 成人在线精品视频| 久久免费精品日本久久中文字幕| 欧美激情综合色综合啪啪五月| 国产福利视频一区二区| 97免费中文视频在线观看| 一本色道久久88综合亚洲精品ⅰ| 高清一区二区三区日本久| 精品久久久久久国产| 国产日韩欧美视频| 欧美激情视频一区二区三区不卡| 国产精品日韩欧美大师| 亚洲人成网在线播放| 亚洲欧美日韩爽爽影院| 亚洲第一精品夜夜躁人人躁| 国产精品入口免费视频一| 亚洲人成电影在线观看天堂色| 97精品国产91久久久久久| 精品视频—区二区三区免费| 久久精品视频在线播放| 欧美整片在线观看| 国产精品网站入口| 亚洲人成啪啪网站| 国内伊人久久久久久网站视频| 国产精品久久久久久久久久久久| 国产亚洲成av人片在线观看桃| xvideos成人免费中文版| 亚洲综合在线小说| 中文字幕在线看视频国产欧美在线看完整| 欧美性理论片在线观看片免费| 日本久久久久久| 日韩在线视频观看正片免费网站| 欧美成人免费播放| 成人观看高清在线观看免费| 国产一区二区三区直播精品电影| 日本一区二区在线播放| 26uuu亚洲国产精品| 91久久国产婷婷一区二区| 国产欧美日韩精品丝袜高跟鞋| 78色国产精品| 亚洲国产精品va| 欧美日韩美女在线观看| 欧美激情一级欧美精品| 亚洲人成网在线播放| 国产午夜精品一区理论片飘花| 亚洲精品久久久久国产| 国产精品久久久久久亚洲调教| 国产精品久久久久免费a∨大胸| 综合久久五月天| 91沈先生作品| 亚洲人成网站999久久久综合| 秋霞午夜一区二区| 日本a级片电影一区二区| 日韩美女主播视频| 97超级碰碰碰| 最近2019中文字幕第三页视频| 美女999久久久精品视频| 亚洲第一福利在线观看| 成人黄色在线观看| 国产极品精品在线观看| 中文字幕精品国产| 91香蕉亚洲精品| 亚洲人线精品午夜| 欧美黄色成人网| 国产日韩在线精品av| 久久精品视频在线| 国产精品白丝av嫩草影院| 久久亚洲欧美日韩精品专区| 亚洲第一页中文字幕| 欧美日韩免费一区| 日韩成人免费视频| 日韩在线免费观看视频| 国产精品久久久久久久久久尿| 色av中文字幕一区| 亚洲精品女av网站| 久久久久久18| 中文字幕日韩av电影| 国产精品第三页| 18久久久久久| 青青久久av北条麻妃海外网| 全球成人中文在线| 国内精品美女av在线播放| 成人h视频在线| 日韩电影中文字幕一区| 亚洲高清福利视频| 综合av色偷偷网| 亚洲在线www| 日韩亚洲精品视频| 亚洲成av人片在线观看香蕉| 日韩av网址在线| 国产日韩在线免费| 国产精品91久久| 国产精品国产自产拍高清av水多| 国产精品99久久久久久人| 亚洲片国产一区一级在线观看| 久久福利视频导航| 久久久午夜视频| 一区二区三区www| 亚洲成人激情在线观看| 国产精品久久99久久| 国产精品第一区| 久久99精品久久久久久噜噜| 亚洲精品国精品久久99热一| 91亚洲一区精品| 黄网动漫久久久| 欧美贵妇videos办公室| 国产有码在线一区二区视频| 久久精品国亚洲| 日韩欧美一区二区三区久久| 国产精品亚洲第一区| 亚洲福利在线看| 精品亚洲国产成av人片传媒| 中文字幕视频在线免费欧美日韩综合在线看| 国产在线精品播放| 日韩高清中文字幕| 国产精品自拍网| 日韩精品极品毛片系列视频| 亚洲成人精品久久久| 久久久中精品2020中文| 国产精品久久久久国产a级| 国产精品久久久久福利| 色噜噜亚洲精品中文字幕| 不卡毛片在线看| 91亚洲精品久久久久久久久久久久| 亚洲免费中文字幕| 亚洲久久久久久久久久久| 曰本色欧美视频在线| 日韩在线视频观看正片免费网站| 国产日本欧美一区| 国产精品视频久久久| 福利一区视频在线观看| 亚洲天堂久久av| 欧美日韩另类视频| 成人在线国产精品| 97成人在线视频| 亚洲精品中文字幕av| 情事1991在线|