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

作者: 字体:[增加 减小] 类型:转载 时间:2012-09-12 我要评论

很显然file_exists是受了asp的影响,因为asp不但有fileExists还有folderExists,driverExists,那么PHP中file_exists是什么意思呢
很显然file_exists是受了asp的影响,因为asp不但有fileExists还有folderExists,driverExists,那么PHP中file_exists是什么意思呢?

PHP的 file_exists = is_dir + is_file

它既可以判断文件是否存在,又可以判断目录是否存在。但这样一个全面的函数执行效率非常低,就像asp中request不指定是form,还是get,cookies,所以结论是:

◦如果要判断目录是否存在,请用独立函数 is_dir(directory) 
◦如果要判断文件是否存在,请用独立函数 is_file(filepath)

is_file 只判断文件是否存在; 
file_exists 判断文件是否存在或者是目录是否存在; 
is_dir 判断目录是否存在;

查看手册,虽然这两个函数的结果都会被缓存,但是is_file却快了N倍。 
还有一个值得注意的: 
文件存在的情况下,is_file比file_exists要快N倍; 
文件不存在的情况下,is_file比file_exists要慢; 
结论是,file_exits函数并不会因为该文件是否真的存在而影响速度,但是is_file影响就大了。

转载于:https://www.cnblogs.com/feng12345/p/5402228.html

PHP中file_exists与is_file,is_dir的区别介绍相关推荐

  1. oracle resulttype,MyBatis中关于resultType和resultMap的区别介绍

    MyBatis中在查询进行select映射的时候,返回类型可以用resultType,也可以用resultMap,resultType是直接表示返回类型的(对应着我们的model对象中的实体),而re ...

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

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

  3. C++中结构体与类的区别介绍

    在参与以C++为编程基础的项目应用中总会遇到结构体类型与类的数据类型,但是其具体应用区别模糊不清 现将其区别总结如下,欢迎补充共同学习(先介绍C和C++中结构体的不同,再对比C++中结构体与类的区别) ...

  4. php request time,php中time()与$_SERVER[REQUEST_TIME]用法区别分析

    php中time()与$_SERVER[REQUEST_TIME]用法区别分析 发布于 2015-01-26 08:56:46 | 143 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本 ...

  5. Flutter 中 stateless 和 stateful widget 的区别[Flutter专题60]

    Flutter 中 stateless 和 stateful widget 的区别 介绍 要在 Flutter 中构建任何应用程序,我们必须创建一个小部件类,它是 Flutter 应用程序的构建块.F ...

  6. sql语句中left join和inner join中的on与where的区别分析

    原文:sql语句中left join和inner join中的on与where的区别分析 关于SQL SERVER的表联接查询INNER JOIN .LEFT JOIN和RIGHT JOIN,经常会用 ...

  7. 无法解析 list 中的方法 iterator_Python-list中的append()和extend()方法区别

    一.append()和extend()方法都是用来添加数据到list末尾的,两者的区别: append()添加的时候会把添加的数据当成一个整体进行添加,允许添加任意类型的数据 extend()添加的时 ...

  8. Python中爬虫框架或模块的区别

    Python中爬虫框架或模块的区别,我们在Python的学习过程中,需要不断的总结知识点,这样我们才能进步的更快一些. (1)爬虫框架或模块 Python自带爬虫模块:urllib.urllib2; ...

  9. python post与get的区别_python中get和post有什么区别

    更多编程教程请到:菜鸟教程 https://www.piaodoo.com/ 友情链接: 高州阳光论坛https://www.hnthzk.com/ 人人影视http://www.sfkyty.com ...

最新文章

  1. PCL:官方程序 Region growing segmentation
  2. memcached协议
  3. Partition学习笔记
  4. mongodb dsl_具有Java DSL的Spring Integration MongoDB适配器
  5. 工作327:uni-数据格式处理
  6. OpenCV--fstream格式化读取坐标数据存为vector
  7. JavaScript--动态添加元素
  8. android:windowSoftInputMode属性使用
  9. 20191202_k-中心聚类算法和k-mean算法Python实现
  10. 在KVM虚拟机中使用spice系列之二(USB映射,SSL,密码,多客户端支持)
  11. 关联分析购物篮案例python_购物篮分析案例_关联分析算法_如何做销售数据分析 – 帆软...
  12. 火狐FireFox浏览器国际版官网下载地址
  13. Docker - 分布式任务调度中心 - xxl-job
  14. 游戏策划笔记:记忆点的构造
  15. cookie有效时间设置,手把手教你设置
  16. php启动 大量sess文件,关于PHP中Session文件过多的有关问题
  17. 房间脉冲响应测量与模拟方法
  18. win10计算机的运行在哪里打开,Win10系统教程 Win10系统运行在哪里打开?
  19. 分布式系统理论基础 - CAP
  20. 前端三剑客之HTML入门教程

热门文章

  1. Chrome使用技巧和编辑框拖动怪问题。
  2. OpenWebSpider 安装使用
  3. 路印协议受邀参加澳洲新南威尔士政府孵化器Haymarket HQ分享论坛
  4. 反转比特位(文章最后有干货)【转】
  5. 在全面部署 IPV6 前,你需要了解都在这儿
  6. SQL to Elasticsearch java code
  7. Centos6.5升级系统自带gcc4.4.7到gcc4.8.0
  8. Android-----View绘制流程以及invalidate()等相关方法分析 .
  9. Exchange 2013 OWA搜索邮件失败问题处理
  10. HDU 2102 A计划