• 技术文章 >后端开发 >php教程

    php文件操作之检查文件是否可读/写/执行

    青灯夜游青灯夜游2021-08-03 18:00:41原创1405
    在之前的文章《php文件操作之逐行读取文件》中,我们介绍了PHP进行逐行读取文件的两种方法(fgets()和fgetss()函数)。下面本篇文章给大家介绍一下如何使用PHP检查文件是否可读、可写、可执行。

    在进行文件读写等操作时,需要先检查一下该文件是否可以读写或执行,即文件是否可读、可写、可执行的权限。那么如何检查呢?今天我们就来给大家介绍一下检查方法。

    我们有一个名为“test.txt”的文本文件,使用chmod()函数来设置权限:

    <?php
    chmod("test.txt", 0400);
    ?>

    上面的代码可设置test.txt文件权限为:所有者可读,其他人无权限。

    下面我们来看看如何检查文件是否可读、可写、可执行的方法。

    1、使用is_readable()函数检查文件是否可读

    is_readable()函数可检查指定的文件是否可读;该函数只接受一个参数$filename,用来指定需要检查的文件。

    下面通过代码示例来看看:

     <?php
     header("Content-type:text/html;charset=utf-8");
     $file = "test.txt";
     if(is_readable($file))
     {
     echo ("$file 可读");
     }
     else
     {
     echo ("$file 不可读");
     }
     ?>

    如果$filename文件存在且可读取数据,则返回 TRUE,否则返回 FALSE。因此输出结果为:

    test.txt 可读

    2、使用is_writable()函数检查文件是否可写

    is_writable()函数可检查指定的文件是否可写。

    该函数同样接受一个参数$filename,用来指定需要检查的文件;如果$filename文件存在且可读取数据,则返回 TRUE,否则返回 FALSE。

    下面通过代码示例来看看:

     <?php
     header("Content-type:text/html;charset=utf-8");
     $file = "test.txt";
     if(is_writable($file))
     {
     echo ("$file 可写");
     }
     else
     {
     echo ("$file 不可写");
     }
     ?>

    输出结果:

    test.txt 不可读

    3、使用is_executable()函数检查文件是否执行

    is_executable()函数可检查指定的文件是否可执行;该函数也接受一个参数$filename

     <?php
     header("Content-type:text/html;charset=utf-8");
     $file = "test.txt";
     if(is_executable($file))
     {
     echo ("$file 可执行");
     }
     else
     {
     echo ("$file 不可执行");
     }
     ?>

    如果$filename文件存在且可读取数据,则返回 TRUE,否则返回 FALSE。因此输出结果为:

    test.txt 不可执行

    说明:

    is_readable()、is_writable()和is_executable()函数的结果会被缓存,需要使用clearstatcache()函数来清除缓存。

    在程序末尾加上下面一句代码即可清除缓存:

    clearstatcache();

    好了就说到这里了,有其他想知道的,可以点击这个哦。→ →PHP文件基础操作

    推荐:PHP面试题大汇总(收藏)》《php视频教程

    以上就是php文件操作之检查文件是否可读/写/执行的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:php 文件 文件属性
    上一篇:php文件操作之逐行读取文件 下一篇:PHP日期时间运用七:获取某个国家的日期和星期
    大前端线上培训班

    相关文章推荐

    • 使用php判断文件是否存在、是否可读、目录是否存在 • php和js实现转换文件大小为人性化可读的方式 • php文件操作之逐个字符读取文件• php文件操作之逐行读取文件

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网