php is_writable判断文件是否可写实例代码


Posted in PHP onOctober 13, 2016

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 相关文章推荐
php公用函数列表[正则]
Feb 22 PHP
利用discuz实现PHP大文件上传应用实例代码
Nov 14 PHP
隐性调用php程序的方法
Mar 09 PHP
PHP中date与gmdate的区别及默认时区设置
May 12 PHP
PHP加密解密实例分析
Dec 25 PHP
win10环境PHP 7 安装配置【教程】
May 09 PHP
通过chrome浏览器控制台(Console)进行PHP Debug的方法
Oct 19 PHP
PHP插件PHPMailer发送邮件功能
Feb 28 PHP
浅谈关于PHP解决图片无损压缩的问题
Sep 01 PHP
PHP token验证生成原理实例分析
Jun 05 PHP
Laravel 自动生成验证的实例讲解:login / logout
Oct 14 PHP
PHP哈希表实现算法原理解析
Dec 11 PHP
基于PHP制作验证码
Oct 12 #PHP
实现PHP搜索加分页
Oct 12 #PHP
如何使用PHP给图片加水印
Oct 12 #PHP
php版微信数据统计接口用法示例
Oct 12 #PHP
php版微信js-sdk支付接口类用法示例
Oct 12 #PHP
php版微信支付api.mch.weixin.qq.com域名解析慢原因与解决方法
Oct 12 #PHP
如何使用php等比例缩放图片
Oct 12 #PHP
You might like
PHP获取网站域名和地址的代码
2008/08/17 PHP
php include,include_once,require,require_once
2008/09/05 PHP
AutoSave/自动存储功能实现
2007/03/24 Javascript
javaScript 读取和设置文档元素的样式属性
2009/04/14 Javascript
该如何加载google-analytics(或其他第三方)的JS
2010/05/13 Javascript
Javascript中使用parseInt函数需要注意的问题
2015/04/02 Javascript
微信小程序 Flex布局详解
2016/10/09 Javascript
解析预加载显示图片艺术
2016/12/05 Javascript
jQuery EasyUI tree增加搜索功能的实现方法
2017/04/27 jQuery
vue 中自定义指令改变data中的值
2017/06/02 Javascript
[54:10]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
[01:02:32]DOTA2-DPC中国联赛 正赛 iG vs PSG.LGD BO3 第二场 2月26日
2021/03/11 DOTA
python批量下载图片的三种方法
2013/04/22 Python
Python实现TCP协议下的端口映射功能的脚本程序示例
2016/06/14 Python
python中(str,list,tuple)基础知识汇总
2018/02/20 Python
解决Python3.7.0 SSL低版本导致Pip无法使用问题
2020/09/03 Python
利用CSS3实现毛玻璃效果示例源码
2016/09/25 HTML / CSS
HTML5的表单(绝对特别强大的功能)使用示例
2013/06/20 HTML / CSS
H5调用相机拍照并压缩图片的实例代码
2017/07/20 HTML / CSS
阿迪达斯意大利在线商店:adidas意大利
2016/09/19 全球购物
波兰最大的宠物用品网上商店:FERA.PL
2019/08/11 全球购物
*p++ 自增p 还是p所指向的变量
2016/07/16 面试题
最新大学生自我评价
2013/09/24 职场文书
应聘美工求职信
2013/11/07 职场文书
会计电算化专业毕业生求职信范文
2013/12/10 职场文书
护士思想汇报
2014/01/12 职场文书
七年级英语教学反思
2014/01/15 职场文书
水利水电建筑施工应届生求职信
2014/07/04 职场文书
售后客服个人自我评价
2014/09/14 职场文书
学生不讲诚信检讨书
2014/09/29 职场文书
汽车机电维修工求职信
2014/09/30 职场文书
2014年公务员转正工作总结
2014/11/07 职场文书
市场营销计划书
2015/01/17 职场文书
导游词之永济鹳雀楼
2020/01/16 职场文书
Win10多屏显示如何设置?Win10电脑多屏显示设置操作方法
2022/07/07 数码科技
html用代码制作虚线框怎么做? dw制作虚线圆圈的技巧
2022/12/24 HTML / CSS