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-02
php 5.3.5安裝memcache注意事項(xiàng)小結(jié)
必須注意php的編譯版本,下載memcache的時(shí)候注意要使用同樣的編譯版本;比如php是使用vc6編譯的,那么memcache也應(yīng)該使用vc6編譯版本。2011-04-04

