首頁  >  文章  >  php教程  >  php is_writable判斷檔案是否可寫入實例程式碼

php is_writable判斷檔案是否可寫入實例程式碼

高洛峰
高洛峰原創
2016-12-28 15:56:251456瀏覽

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 不可读";
}
?>

其實我們也可以自己寫一個函數來判斷檔案是否可讀,而不需要使用phpphpreee

其實以下函數可用於內建函數可用於內建函數替換php內建的is_writable函數,大家可以參考一下:

//可用于替换php内置的is_writable函数
function isWritable($filename){
  if(preg_match(&#39;/\/$/&#39;,$filename)){
    $tmp_file=sprintf(&#39;%s%s.tmp&#39;,$filename,uniqid(mt_rand()));
    return isWritable($tmp_file);
  }
  if(file_exists($filename)){
    //文件已经存在的话,使用读写方式打开
    $fp=@fopen($filename,&#39;r+&#39;);
    if($fp){
      fclose($fp);
      return true;
    }
    else{
      return false;
    }
  }
  else{
    $fp=@fopen($filename,&#39;w&#39;);
    if($fp){
      fclose($fp);
      unlink($filename);
      return true;
    }
    else{
      return false;
    }
  }
}

感謝閱讀,希望能幫助大家,謝謝大家對本站的支持!

更多php is_writable判斷檔案是否可寫實例程式碼相關文章請關注PHP中文網! 🎜
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn