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 相关文章推荐
mysql 搜索之简单应用
Apr 27 PHP
eAccelerator的安装与使用详解
Jun 13 PHP
PHP实现检测客户端是否使用代理服务器及其匿名级别
Jan 07 PHP
避免Smarty与CSS语法冲突的方法
Mar 02 PHP
PHP中preg_match正则匹配中的/u、/i、/s含义
Apr 17 PHP
php+ajax实现无刷新分页
Nov 18 PHP
让你的PHP7更快之Hugepage用法分析
May 31 PHP
PHP购物车类Cart.class.php定义与用法示例
Jul 20 PHP
php 解析xml 的四种方法详细介绍
Oct 26 PHP
lnmp安装多版本PHP共存的方法详解
Aug 02 PHP
PHP7内核CGI与FastCGI详解
Apr 14 PHP
PHP文件上传小程序 适合初学者学习!
May 23 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
基于header的一些常用指令详解
2013/06/06 PHP
php中的比较运算符详解
2013/10/28 PHP
php获取从百度搜索进入网站的关键词的详细代码
2014/01/08 PHP
学习php中的正则表达式
2014/08/17 PHP
基于thinkphp5框架实现微信小程序支付 退款 订单查询 退款查询操作
2020/08/17 PHP
用js自动判断浏览器分辨率的代码
2007/01/28 Javascript
CSS和Javascript简单复习资料
2010/06/29 Javascript
ExtJS中文乱码之GBK格式编码解决方案及代码
2013/01/20 Javascript
javascript使用百度地图api和html5特性获取浏览器位置
2014/01/10 Javascript
javascript日期对象格式化为字符串的实现方法
2014/01/14 Javascript
导入extjs、jquery 文件时$使用冲突问题解决方法
2014/01/14 Javascript
js实现checkbox全选、不选与反选的方法
2015/02/09 Javascript
JavaScript使用DeviceOne开发实战(二) 生成调试安装包
2015/12/01 Javascript
JSONP基础知识详解
2017/03/19 Javascript
fullPage.js和CSS3实现全屏滚动效果
2017/05/05 Javascript
JavaScript输出所选择起始与结束日期的方法
2017/07/12 Javascript
JavaScript门道之标准库
2018/05/26 Javascript
三步实现ionic3点击退出app程序
2019/09/17 Javascript
[07:38]2014DOTA2国际邀请赛 Newbee顺利挺进胜者组赛后专访
2014/07/15 DOTA
[43:24]2018DOTA2亚洲邀请赛3月29日 小组赛A组 LGD VS Liquid
2018/03/30 DOTA
华为校园招聘上机笔试题 扑克牌大小(python)
2020/04/22 Python
python3中类的继承以及self和super的区别详解
2019/06/26 Python
Python将文字转成语音并读出来的实例详解
2019/07/15 Python
django的auth认证,authenticate和装饰器功能详解
2019/07/25 Python
django重新生成数据库中的某张表方法
2019/08/28 Python
Django 用户登陆访问限制实例 @login_required
2020/05/13 Python
Win 10下Anaconda虚拟环境的教程
2020/05/18 Python
python filecmp.dircmp实现递归比对两个目录的方法
2020/05/22 Python
个人简历自我评价
2014/02/02 职场文书
企业军训感言
2014/02/08 职场文书
数控技校生自我鉴定
2014/04/19 职场文书
2015年元旦联欢晚会活动总结
2014/11/28 职场文书
在酒桌上的敬酒词
2015/08/12 职场文书
给领导敬酒词
2015/08/12 职场文书
干部外出学习心得体会
2016/01/18 职场文书
排查Tomcat进程假死的问题
2022/05/06 Servers