您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關(guān)php中怎么利用 is_writable判斷文件是否可寫,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
php is_writable函數(shù)介紹
is_writable — 判斷給定的文件名是否可寫,該函數(shù)的結(jié)果會(huì)被緩存。請(qǐng)使用 clearstatcache() 來清除緩存。
語法:
bool is_writable ( string $filename )
如果文件存在并且可寫則返回 TRUE 。filename 參數(shù)可以是一個(gè)允許進(jìn)行是否可寫檢查的目錄名。
記住 PHP 也許只能以運(yùn)行 webserver 的用戶名(通常為 'nobody')來訪問文件。不計(jì)入安全模式的限制。
參數(shù):
filename 要檢查的文件名稱。
返回值:
如果文件 filename 存在并且可寫則返回 TRUE 。
php is_writable實(shí)例
使用is_writable函數(shù)判斷給定的文件是否可讀:
<?php $filename = "test.text"; if (is_readable($filename)) { echo "文件 $filename 可讀"; } else { echo "文件 $filename 不可讀"; } ?>
其實(shí)我們也可以自己寫一個(gè)函數(shù)來判斷文件是否可讀,而不需要使用php內(nèi)置函數(shù)is_writable,以下函數(shù)可用于替換php內(nèi)置的is_writable函數(shù),大家可以參考一下:
//可用于替換php內(nèi)置的is_writable函數(shù) function isWritable($filename){ if(preg_match('/\/$/',$filename)){ $tmp_file=sprintf('%s%s.tmp',$filename,uniqid(mt_rand())); return isWritable($tmp_file); } if(file_exists($filename)){ //文件已經(jīng)存在的話,使用讀寫方式打開 $fp=@fopen($filename,'r+'); if($fp){ fclose($fp); return true; } else{ return false; } } else{ $fp=@fopen($filename,'w'); if($fp){ fclose($fp); unlink($filename); return true; } else{ return false; } } }
看完上述內(nèi)容,你們對(duì)php中怎么利用 is_writable判斷文件是否可寫有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。