今天就跟大家聊聊有關php中怎么利用 is_writable判斷文件是否可寫,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
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;
}
}
}看完上述內容,你們對php中怎么利用 is_writable判斷文件是否可寫有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。