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 调用远程url的六种方法小结
Nov 02 PHP
PHPMYADMIN导入数据最大为2M的解决方法
Apr 23 PHP
PHP获取毫秒级时间戳的方法
Apr 15 PHP
PHP实现二叉树的深度优先与广度优先遍历方法
Sep 28 PHP
PHP6连接SQLServer2005的三部曲
Apr 15 PHP
[原创]php求圆周率的简单实现方法
May 30 PHP
Yii2 批量插入、更新数据实例
Mar 15 PHP
实例讲解PHP表单验证功能
Feb 15 PHP
laravel异步监控定时调度器实例详解
Jun 21 PHP
Smarty模板语法详解
Jul 20 PHP
关于Curl在Swoole协程中的解决方案详析
Sep 12 PHP
ThinkPHP类似AOP思想的参数验证的实现方法
Dec 18 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
全国FM电台频率大全 - 5 内蒙古自治区
2020/03/11 无线电
Zend引擎的发展 [15]
2006/10/09 PHP
MySQL中create table语句的基本语法是
2007/01/15 PHP
php !function_exists(&quot;T7FC56270E7A70FA81A5935B72EACBE29&quot;))代码解密
2011/01/07 PHP
PHP5.3以上版本安装ZendOptimizer扩展
2015/03/27 PHP
PHP实现的各类hash算法长度及性能测试实例
2017/08/27 PHP
ThinkPHP5.0框架结合Swoole开发实现WebSocket在线聊天案例详解
2019/04/02 PHP
提高Laravel应用性能方法详解
2019/06/24 PHP
tp5 实现列表数据根据状态排序
2019/10/18 PHP
一个简单的JavaScript 日期计算算法
2009/09/11 Javascript
javascript语言结构小记(一)
2011/09/10 Javascript
js自动闭合html标签(自动补全html标记)
2012/10/04 Javascript
一个Action如何调用两个不同的方法
2014/05/22 Javascript
JavaScript设计模式之单件模式介绍
2014/12/28 Javascript
js正则表达式匹配数字字母下划线等
2015/04/14 Javascript
JQuery查找DOM节点的方法
2015/06/11 Javascript
angularjs自定义ng-model标签的属性
2016/01/21 Javascript
使用NodeJs 开发微信公众号(三)微信事件交互实例
2016/03/02 NodeJs
vue.js项目打包上线的图文教程
2017/11/16 Javascript
vuex的使用及持久化state的方式详解
2018/01/23 Javascript
JS代码简洁方式之函数方法详解
2020/07/28 Javascript
跟老齐学Python之做一个小游戏
2014/09/28 Python
nginx黑名单和django限速,最简单的防恶意请求方法分享
2019/08/09 Python
Python 批量刷博客园访问量脚本过程解析
2019/08/30 Python
Python利用Scrapy框架爬取豆瓣电影示例
2020/01/17 Python
PyCharm中如何直接使用Anaconda已安装的库
2020/05/28 Python
python用什么编辑器进行项目开发
2020/06/17 Python
美国女孩洋娃娃店:American Girl
2017/10/24 全球购物
企业总经理岗位职责
2014/02/13 职场文书
幼儿园教师的考核评语
2014/04/18 职场文书
建筑安全标语
2014/06/07 职场文书
党的群众路线教育实践活动组织生活会发言材料
2014/10/17 职场文书
2014年销售工作总结
2014/12/01 职场文书
Vue项目中如何封装axios(统一管理http请求)
2021/05/02 Vue.js
浅谈JavaScript浅拷贝和深拷贝
2021/11/07 Javascript
vue @ ~ 相对路径 路径别名设置方式
2022/06/05 Vue.js