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 相关文章推荐
header导出Excel应用示例
Jan 24 PHP
ThinkPHP调用百度翻译类实现在线翻译
Jun 26 PHP
php+xml实现在线英文词典查询的方法
Jan 23 PHP
php插入排序法实现数组排序实例
Feb 16 PHP
PHP生成树的方法
Jul 28 PHP
php在数据库抽象层简单使用PDO的方法
Nov 03 PHP
PHP 7的一些引人注目的新特性简单介绍
Nov 08 PHP
Linux php 中文乱码的快速解决方法
May 13 PHP
在IIS下安装PHP扩展的方法(超简单)
Apr 10 PHP
PHP基于迭代实现文件夹复制、删除、查看大小等操作的方法
Aug 11 PHP
php微信开发之谷歌测距
Jun 14 PHP
PHP实现简单的计算器
Aug 28 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
上海永华YH-R296(华普R-96)12波段立体声收音机的分析和打理
2021/03/02 无线电
一个可以删除字符串中HTML标记的PHP函数
2006/10/09 PHP
基于thinkPHP实现的微信自定义分享功能示例
2016/09/23 PHP
php如何把表单内容提交到数据库
2019/07/08 PHP
php适配器模式简单应用示例
2019/10/23 PHP
php的instanceof和判断闭包Closure操作示例
2020/01/26 PHP
不用写JS也能使用EXTJS视频演示
2008/12/29 Javascript
javascript 获取页面的高度及滚动条的位置的代码
2010/05/06 Javascript
jquery实现metro效果示例代码
2013/09/06 Javascript
ES6中的数组扩展方法
2016/08/26 Javascript
jQuery实现鼠标选中文字后弹出提示窗口效果【附demo源码】
2016/09/05 Javascript
bootstrap与Jquery UI 按钮样式冲突的解决办法
2016/09/23 Javascript
JS正则表达式验证密码格式的集中情况总结
2017/02/23 Javascript
Validform验证时可以为空否则按照指定格式验证
2017/10/20 Javascript
解决修复npm安装全局模块权限的问题
2018/05/17 Javascript
js中怎么判断两个字符串相等的实例
2019/01/17 Javascript
Vue 组件参数校验与非props特性的方法
2019/02/12 Javascript
基于vue开发微信小程序mpvue-docs跳转页面功能
2019/04/10 Javascript
js实现简单的随机点名器
2020/09/17 Javascript
Node.js fs模块原理及常见用途
2020/10/22 Javascript
Python的Flask框架中@app.route的用法教程
2015/03/31 Python
Python socket网络编程TCP/IP服务器与客户端通信
2017/01/05 Python
python编程使用selenium模拟登陆淘宝实例代码
2018/01/25 Python
django中SMTP发送邮件配置详解
2019/07/19 Python
Python Pandas 转换unix时间戳方式
2019/12/07 Python
Python Selenium模块安装使用教程详解
2020/07/09 Python
在canvas上实现元素图片镜像翻转动画效果的方法
2018/03/20 HTML / CSS
西班牙购买隐形眼镜、眼镜和太阳镜网站:Lentiamo.es
2020/06/11 全球购物
什么是SQL Server的确定性函数和不确定性函数
2016/08/04 面试题
27个经典Linux面试题及答案,你知道几个?
2014/03/11 面试题
外贸英语专业求职信范文
2013/12/25 职场文书
蟋蟀的住宅教学反思
2014/04/26 职场文书
医院领导班子查摆问题对照检查材料思想汇报
2014/10/08 职场文书
高中生社会实践心得体会
2016/01/14 职场文书
详细总结Python常见的安全问题
2021/05/21 Python
Python的三个重要函数详解
2022/01/18 Python