php is_writable函數介紹
is_writable — 判斷給定的文件名是否可寫,該函數的結果會被緩存。請使用 clearstatcache() 來清除緩存。
語法:
bool is_writable ( string $filename )
如果文件存在並且可寫則返回 TRUE 。filename 參數可以是一個允許進行是否可寫檢查的目錄名。
記住 PHP 也許只能以運行 webserver 的用戶名(通常為 'nobody')來訪問文件。不計入安全模式的限制。
參數:
filename 要檢查的文件名稱。
返回值:
如果文件 filename 存在並且可寫則返回 TRUE 。
php is_writable實例
使用is_writable函數判斷給定的文件是否可讀:
<?php $filename = "test.text"; if (is_readable($filename)) { echo "文件 $filename 可讀"; } else { echo "文件 $filename 不可讀"; } ?>
其實我們也可以自己寫一個函數來判斷文件是否可讀,而不需要使用php內置函數is_writable,以下函數可用於替換php內置的is_writable函數,大家可以參考一下:
//可用於替換php內置的is_writable函數 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)){ //文件已經存在的話,使用讀寫方式打開 $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; } } }
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!