PHP檢查文件是否存在,不存在自動(dòng)創(chuàng)建及讀取文件內(nèi)容操作示例
本文實(shí)例講述了PHP檢查文件是否存在,不存在自動(dòng)創(chuàng)建及讀取文件內(nèi)容操作。分享給大家供大家參考,具體如下:
<?php $filename = 'a/b.html'; $writetext = 'ssssssssssss'; $result = jwritefile($filename, $writetext); var_dump($result);die; function jwritefile($filename, $writetext) { $position = strrpos($filename,'/'); $path = substr($filename,0,$position); if(!file_exists($path)){ mkdir($path,0777,true); } $updatetime = filemtime($filename); $difftime = time()-$updatetime; if($difftime > 3600){//時(shí)間大于一個(gè)小時(shí) if (@file_put_contents($filename, $writetext, LOCK_EX)) { return 1; }else { return -1; } }else{ return 0;//時(shí)間小于1一個(gè)鐘頭,不用生成 } } ?>
<?php $filename = $path.'log/'.gmdate('Ym').'/'.gmdate('j').'.log';//文件地址 $position = strrpos($filename,'/'); $path = substr($filename,0,$position); if(!file_exists($path)){ mkdir($path,0777,true);//創(chuàng)建目錄 } $fp=@fopen($filename,"a+"); $content = $log."-".date('Y-m-d H:i:s')."\r\n"; @fputs($fp,$content); @fclose($fp); ?>
讀取文件內(nèi)容
<?php $handle = @fopen("/tmp/inputfile.txt", "r"); if ($handle) { while (!feof($handle)) { $buffer = fgets($handle, 4096); echo $buffer; } fclose($handle); } ?>
附加說明:
mode | 說明 |
---|---|
'r' | 只讀方式打開,將文件指針指向文件頭。 |
'r+' | 讀寫方式打開,將文件指針指向文件頭。 |
'w' | 寫入方式打開,將文件指針指向文件頭并將文件大小截為零。如果文件不存在則嘗試創(chuàng)建之。 |
'w+' | 讀寫方式打開,將文件指針指向文件頭并將文件大小截為零。如果文件不存在則嘗試創(chuàng)建之。 |
'a' | 寫入方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創(chuàng)建之。 |
'a+' | 讀寫方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創(chuàng)建之。 |
'x' | 創(chuàng)建并以寫入方式打開,將文件指針指向文件頭。如果文件已存在,則 fopen() 調(diào)用失敗并返回FALSE,并生成一條 E_WARNING 級(jí)別的錯(cuò)誤信息。如果文件不存在則嘗試創(chuàng)建之。這和給 底層的open(2) 系統(tǒng)調(diào)用指定 O_EXCL|O_CREAT 標(biāo)記是等價(jià)的。此選項(xiàng)被 PHP 4.3.2 以及以后的版本所支持,僅能用于本地文件。 |
'x+' | 創(chuàng)建并以讀寫方式打開,將文件指針指向文件頭。如果文件已存在,則 fopen() 調(diào)用失敗并返回FALSE,并生成一條 E_WARNING 級(jí)別的錯(cuò)誤信息。如果文件不存在則嘗試創(chuàng)建之。這和給 底層的open(2) 系統(tǒng)調(diào)用指定 O_EXCL|O_CREAT 標(biāo)記是等價(jià)的。此選項(xiàng)被 PHP 4.3.2 以及以后的版本所支持,僅能用于本地文件 |
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php文件操作總結(jié)》、《PHP目錄操作技巧匯總》、《PHP常用遍歷算法與技巧總結(jié)》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》及《PHP網(wǎng)絡(luò)編程技巧總結(jié)》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章
php抽象類使用要點(diǎn)與注意事項(xiàng)分析
這篇文章主要介紹了php抽象類使用要點(diǎn)與注意事項(xiàng),實(shí)例分析了php抽象類的功能、定義與使用中的相關(guān)注意事項(xiàng),需要的朋友可以參考下2015-02-02php 5.3.5安裝memcache注意事項(xiàng)小結(jié)
必須注意php的編譯版本,下載memcache的時(shí)候注意要使用同樣的編譯版本;比如php是使用vc6編譯的,那么memcache也應(yīng)該使用vc6編譯版本。2011-04-04