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

 更新时间:2016年10月13日 08:41:19   投稿:lqh  
这篇文章主要介绍了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;
    }
  }
}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • laravel 中如何使用ajax和vue总结

    laravel 中如何使用ajax和vue总结

    本篇文章主要介绍了laravel 中使用ajax和vue总结,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • php把数据表导出为Excel表的最简单、最快的方法(不用插件)

    php把数据表导出为Excel表的最简单、最快的方法(不用插件)

    很多时候,数据库中的数据需要导出成excel,以下是最简便的方法,不用导出excel的类,即使功能简单,但是对于没有复杂需求的项目“见效快”
    2014-05-05
  • php+jquery+html实现点击不刷新加载更多的实例代码

    php+jquery+html实现点击不刷新加载更多的实例代码

    下面小编就为大家带来一篇php+jquery+html实现点击不刷新加载更多的实例代码。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-08-08
  • 实例讲解yii2.0在php命令行中运行的步骤

    实例讲解yii2.0在php命令行中运行的步骤

    Yii中的资源是和Web页面相关的文件,可为CSS文件,JavaScript文件,图片或视频等,资源放在Web可访问的目录下,直接被Web服务器调用。本文通过实例讲解yii2.0在php命令行中运行的步骤,对yii2.0 php相关知识感兴趣的朋友一起学习吧
    2015-12-12
  • PHP面向对象教程之自定义类

    PHP面向对象教程之自定义类

    所谓面向对象就是什么时候什么东西做什么,我们设计类的时候需要想的就是怎么做的内容,那么怎么样的一个类才算是符合OOP的思想呢,答案是:这个类写好之后,在使用的过程中,能准确的代表一个事物,在书写的时候代码要和思维描述一致,即这个东西做什么。
    2014-06-06
  • thinkphp5上传图片及生成缩略图公共方法(分享)

    thinkphp5上传图片及生成缩略图公共方法(分享)

    下面小编就为大家分享一篇thinkphp5上传图片及生成缩略图公共方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-01-01
  • thinkphp3.2框架集成QRcode生成二维码的方法分析

    thinkphp3.2框架集成QRcode生成二维码的方法分析

    这篇文章主要介绍了thinkphp3.2框架集成QRcode生成二维码的方法,结合实例形式分析了QRcode的下载、扩展以及thinkphp3.2使用QRcode生成二维码的相关操作技巧,需要的朋友可以参考下
    2020-03-03
  • ThinkPHP5.0框架控制器继承基类和自定义类示例

    ThinkPHP5.0框架控制器继承基类和自定义类示例

    这篇文章主要介绍了ThinkPHP5.0框架控制器继承基类和自定义类,结合实例形式分析了thinkPHP5.0控制器基类与继承类相关定义与使用技巧,需要的朋友可以参考下
    2018-05-05
  • php验证码实现代码(3种)

    php验证码实现代码(3种)

    这篇文章主要介绍了php验证码实现代码,纯数字验证码,数字加英文验证码还有一种汉字验证码,感兴趣的小伙伴们可以参考一下
    2015-09-09
  • ThinkPHP视图查询详解

    ThinkPHP视图查询详解

    这篇文章主要介绍了ThinkPHP视图查询,需要的朋友可以参考下
    2014-06-06

最新评论