平时我们都会需要判断文件是否存在,is_file 和file_exists 都可以判断,但2个有区别。

is_file()

该函数的结果会被缓存。请使用 clearstatcache() 来清除缓存。

file_exists() 则不需要。

下面是会产生缓存的函数,如果需要多次比较判断结果,则需要在第二次执行时,先执行clearstatcache(),之后再操作;

  • stat()
  • lstat()
  • file_exists()
  • is_writable()
  • is_readable()
  • is_executable()
  • is_file()
  • is_dir()
  • is_link()
  • filectime()
  • fileatime()
  • filemtime()
  • fileinode()
  • filegroup()
  • fileowner()
  • filesize()
  • filetype()
  • fileperms()

官方的例子:

<?php
//check filesize
echo filesize("test.txt");
echo "<br />";$file = fopen("test.txt", "a+");
// truncate file
ftruncate($file,100);
fclose($file);//Clear cache and check filesize again
clearstatcache();
echo filesize("test.txt");
?>

PHP is_file 和file_exists的区别相关推荐

  1. php 如何判断文件、文件夹/目录是否存在(is_file与file_exists的区别、效率)

    PHP获取文件绝对路径: https://blog.csdn.net/haibo0668/article/details/105735928 TP5 例子: //判断模板是存在,存在就调用新模板,不存 ...

  2. PHP中file_exists与is_file、is_dir的区别,以及执行效率的比较

    判断文件是否存在,有2个常用的PHP函数:is_file 和 file_exists, 判断文件夹是否存在,有2个常用PHP函数:is_dir 和 file_exists, 即 file_exists ...

  3. 黄聪:is_file和file_exists效率比较

    目前在弄文件缓存的时候用到了判定文件存在与否,is_file()还是file_exists()呢?is_file和file_exists两者效率比较起来,谁的运行速度更快呢?还是做个测试吧: 1 2 ...

  4. is_file()和file_exists()

    判断文件是否存在,用函数 is_file(), 判断目录是否存在,用函数 is_dir(), 不确定传入的参数是文件还是目录的时候用file_exists. 转载于:https://www.cnblo ...

  5. php file_exists无效解决办法

    一:is_file 和 file_exists 的区别: 当文件存在时:is_file 比 file_exists快了N倍 当文件不存在时:is_file 比 file_exists慢 总之一句话:f ...

  6. PHP中file_exists与is_file,is_dir的区别介绍

    PHP中file_exists与is_file,is_dir的区别介绍 作者: 字体:[增加 减小] 类型:转载 时间:2012-09-12 我要评论 很显然file_exists是受了asp的影响, ...

  7. 驳《五大受损 全面解析PHP的糟糕设计》——为PHP正言

    原文地址http://www.oschina.net/question/57579_50368 <五大受损 全面解析PHP的糟糕设计>,原文地址: http://www.oschina.n ...

  8. mysql导出结构及数据结构,Mysql导出数据结构 or 数据

    如果我们单单只想导出mysql数据表结构,通过navcat工具还不行,这时我们可以用mysqldump工具 在mysql server的安装目录:C:\Program Files\MySQL\MySQ ...

  9. php函数总结,php函数

    我们知道Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,看好是编码,并不是加密. 编码过程不解释了,Base64要求把每三个8Bit的字节转换为四个6Bit的字节(3*8 = 4* ...

最新文章

  1. 正交多项式族(勒让德多项式跟切比雪夫多项式)理论
  2. c++面试题【转】 面经
  3. Eclipse 工作空间(Workspace)---Eclipse教程第07课
  4. What every programmer needs to know about game networking
  5. 大道五目Flash英文版(Renju Problems)程序分析之禁手判断
  6. 关于vue中next和Tick(nextTick)的一点理解
  7. AI精选荐号 | 深度学习 自然语言处理 计算机视觉 python C++
  8. 对不起,又秀了一波恩爱!
  9. 数字电视输出标准规范和BT601/BT709/BT2020色域转换方法资料整理
  10. 华为手机怎么移除云盘内容_华为手机网盘怎么样删除
  11. 联想移动裁员为求自保 摩托罗拉品牌逐渐消退
  12. Hibernate 、继承关联映射
  13. SJF调度算法(操作系统)短作业优先和最短剩余时间优先
  14. Python文件的读写以及操作excel
  15. 计算机板块:外包引领软件业高成长
  16. 小米集团2023校招芯片设计笔试
  17. 使用for循环同时便利两个列表
  18. 自动驾驶专题介绍 ———— 超声波雷达
  19. 远程桌面打开任务管理器
  20. 分享一个ESP32中继

热门文章

  1. Automated_bounty_Hunter全自动漏洞赏金猎人使用场景一
  2. Pikachu(皮卡丘)靶场中SQL注入
  3. 电磁场与仿真软件(19)
  4. C++使用OPENSSL进行RSA加密,java服务端解密
  5. Python 3语法小记(四)字典 dictionary
  6. Docker 深入篇之 Build 原理
  7. Pranava Pra 使用教程:
  8. 利用python进行图像视觉基础练习
  9. Scrapy(二)翻页功能
  10. TFT-lCD的常见接口介绍