PHP文件系统管理(实例讲解)


Posted in PHP onSeptember 19, 2017

文件概念:

第一个是windows的文件,另一个php根据LINUX的文件,两者是有所不同的,我们说的页面基于windows的文件可以是是文件夹(也就是目录)或是文件,而php两者都必须有,它包含目录和文件2种。

1.判断文件类型

(1)获取文件类型        filetype("./images")

例如:var_dump(filetype("./img")); //返回文件类型,目录或文件,如果是目录则返回dir,如果是文件则返回file;

 (2)判断是否是目录类型      is_dir("")

判断是否是文件类型

is_file("")

例如:var_dump(is_dir("./img/11.png"));

var_dump(is_file("./img/11.png"));

2.文件属性

(1)文件上次访问时间     fileatime("")     其返回值为时间戳

文件创建时间

filectime("")

文件修改时间

  filemtime("")

文件大小

 filesize("")

文件是否已存在

file_exists("")       这个比较常用

例如:var_dump(date("Y-m-d H:i:s",fileatime("./img/11.png")));  返回的为上次访问的正常时间

3.文件路径

(1)当前路径       ./                例如:./date

(2)上级路径

../

  例如:../img

(3)根路径   

页面的模式:根目录为www    
例如:/1220/wenjian/img/11.png
php的模式:根目录为磁盘,即操作系统根

例如:/wamp/www/1220/wenjian/img/11.png

(4)取服务器的根目录      

$_SERVER['DOCUMENT_ROOT']   
例如:echo $_SERVER['DOCUMENT_ROOT'];

(5)路径中获取文件名 

basename("路径")    
例如:echo basename("/wamp/www/1220/wenjian/img/11.png");
返回的是11.png
basename("路径",".php/.txt")

例如:echo basename("/wamp/www/1220/wenjian/img/11.png",".png");
返回的是11

(6)路径中目录名

dirname("路径")
例如:echo dirname("/wamp/www/1220/wenjian/img/11.png");
返回的是img

(7)返回数组 

pathinfo("路径") 

(8)返回规范化的绝对路径 

realpath("路径")

例如:echo realpath("./img/11.png");//将相对路径转化为绝对路径  
得到的值是/wamp/www/1220/wenjian/img/11.png

4.目录操作

(1)遍历数组

glob("./fenye/*.php")

实例:给你一个文件夹,返回该文件夹下所有文件数量

<?php
//递归函数实现功能
 function fileall($fname){
$sum = 0;
  if(is_dir($fname)){
  $dir = opendir($fname);
  while($name = readdir($dir)){  
  if($name != "." && $name != ".."){
   $wzpath = $fname."/".$name;//将文件拼接成完整的路径
   if(is_file($wzpath)){//如果是文件+1 
   $sum++;
   }else{//如果是文件夹调用本身函数查找所有文件
   $sum += fileall($wzpath);
   }
  }
  }
  closedir($dir);
 return $sum;
  }else{
  return 1;
  }
 }

函数调用:echo fileall("./bootstrap");

?>

以上这篇PHP文件系统管理(实例讲解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
坏狼的PHP学习教程之第1天
Jun 15 PHP
php 大数据量及海量数据处理算法总结
May 07 PHP
PHP数组循环操作详细介绍 附实例代码
Feb 03 PHP
分享8个最佳的代码片段在线测试网站
Jun 29 PHP
windows的文件系统机制引发的PHP路径爆破问题分析
Jul 28 PHP
php模拟登陆的实现方法分析
Jan 09 PHP
php使用memcoder将视频转成mp4格式的方法
Mar 12 PHP
使用PHPExcel操作Excel用法实例分析
Mar 26 PHP
Smarty中的注释和截断功能介绍
Apr 09 PHP
laravel中命名路由的使用方法
Feb 24 PHP
tp5(thinkPHP5)框架实现多数据库查询的方法
Jan 10 PHP
PHP+redis实现的限制抢购防止商品超发功能详解
Sep 19 PHP
Laravel学习教程之View模块详解
Sep 18 #PHP
php制作圆形用户头像的实例_自定义封装类源代码
Sep 18 #PHP
PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)
Sep 17 #PHP
PHP实现深度优先搜索算法(DFS,Depth First Search)详解
Sep 16 #PHP
PHP实现广度优先搜索算法(BFS,Broad First Search)详解
Sep 16 #PHP
PHP实现的迪科斯彻(Dijkstra)最短路径算法实例
Sep 16 #PHP
PHP环形链表实现方法示例
Sep 15 #PHP
You might like
PHP+XML 制作简单的留言本 图文教程
2009/11/02 PHP
php操作xml入门之xml基本介绍及xml标签元素
2015/01/23 PHP
php自定义函数br2nl实现将html中br换行符转换为文本输入中换行符的方法【与函数nl2br功能相反】
2017/02/17 PHP
laravel 框架结合关联查询 when()用法分析
2019/11/22 PHP
js+FSO遍历文件夹下文件并显示
2007/03/07 Javascript
Javascript 类型转换方法
2010/10/24 Javascript
jQuery Form 页面表单提交的小例子
2013/11/15 Javascript
用console.table()调试javascript
2014/09/04 Javascript
JS是按值传递还是按引用传递
2015/01/30 Javascript
nodejs中使用多线程编程的方法实例
2015/03/24 NodeJs
删除javascript所创建子节点的方法
2015/05/21 Javascript
原生JS取代一些JQuery方法的简单实现
2016/09/20 Javascript
NodeJs读取JSON文件格式化时的注意事项
2016/09/25 NodeJs
less简单入门(CSS 预处理语言)
2017/03/08 Javascript
JS+CSS实现下拉刷新/上拉加载插件
2017/03/31 Javascript
Node.js实现用户评论社区功能(体验前后端开发的乐趣)
2019/05/09 Javascript
[19:14]DOTA2 HEROS教学视频教你分分钟做大人-维萨吉
2014/06/24 DOTA
Python 匹配任意字符(包括换行符)的正则表达式写法
2009/10/29 Python
python使用win32com在百度空间插入html元素示例
2014/02/20 Python
python分析网页上所有超链接的方法
2015/05/08 Python
Python检测QQ在线状态的方法
2015/05/09 Python
TensorFlow变量管理详解
2018/03/10 Python
详解python编译器和解释器的区别
2019/06/24 Python
python 自定义装饰器实例详解
2019/07/20 Python
python 叠加等边三角形的绘制的实现
2019/08/14 Python
利用HTML5+CSS3实现3D转换效果实例详解
2017/05/02 HTML / CSS
html5 Canvas画图教程(8)—canvas里画曲线之bezierCurveTo方法
2013/01/09 HTML / CSS
html5 实现客户端验证上传文件的大小(简单实例)
2016/05/15 HTML / CSS
网上常见的一份Linux面试题(多项选择部分)
2014/09/09 面试题
法律专业应届本科毕业生求职信
2013/10/25 职场文书
新娘父亲婚礼致辞
2014/01/16 职场文书
劳动模范事迹材料
2014/01/19 职场文书
中文教师求职信
2014/02/22 职场文书
合作意向书范本
2014/03/31 职场文书
手术室护士个人总结
2015/02/13 职场文书
文明上网主题班会
2015/08/14 职场文书