PHP文件系统管理
文件概念:
第一个是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文件系统管理的更多相关文章
- Linux磁盘及文件系统管理
在LINUX中我们知道一个很重要的概念,那就是"一切皆文件",这里的一切表示所有在LINUX系统的对象,自然也包括了LINUX中的硬盘设备.在LINUX中所有设备都被抽象成一个文件 ...
- linux下fdisk分区管理、文件系统管理、挂载文件系统等
分区管理工具有:fdisk, parted, sfdisk fdisk:对于一块硬盘来讲,最多只能管理15分区: # fdisk -l [-u] [device...] 查看硬盘设备分区信息 # f ...
- 【linux相识相知】磁盘分区及文件系统管理详解
磁盘,提供持久的数据存储,它不像我们的内存,如果突然断电了,在内存中的数据一般都会被丢掉了,内存中的数据在保存的时候,会被写到硬盘里面,磁盘也是一种I/O设备. 我们都知道磁盘分区完成之后,还要进行格 ...
- linux(3)磁盘与文件系统管理/查看硬盘、内存空间/文件系统的操作/ 文件的压缩和打包
一.磁盘与文件系统管理 1.分区与文件系统分区:记录每一个分区的开始柱面和结束柱面主引导区(master boot recorder):记录分区的数据,记录硬盘里所有的分区信息分区划分好后,要将分区格 ...
- Linux系列教程(十八)——Linux文件系统管理之文件系统常用命令
通过前面两篇博客,我们介绍了Linux系统的权限管理.Linux权限管理之ACL权限 介绍了通过设定 ACL 权限,我们为某个用户指定某个文件的特定权限,这在Linux只能对于一个文件只能有所有者权限 ...
- Linux之磁盘与文件系统管理
磁盘及文件系统管理详解 [参考文献:马哥视频] 原文:http://blog.csdn.net/u013008795/article/details/51150075 目前市场上主流的磁盘是机械式硬盘 ...
- Linux文件系统管理命令(第二版)
Linux文件系统管理命令 常用命令 1.df命令 查看分区使用情况 常用选项 -h 比较人性化 -m 以兆字节显示分区使用情况 显示信息: Mounted on:挂载点 Filesystem:对应的 ...
- uni-app调用原生的文件系统管理器(可选取附件上传)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- linux btrfs文件系统管理与应用
btrfs文件系统管理与应用 1.btrfs文件系统 基本介绍 btrfs文件系统在CentOS7.x上属于技术预览版 btrfs文件系统英文名:B-tree FileSystem或者Butter ...
- Linux:Day7(下) 磁盘管理、文件系统管理
Linux入门 Linux系统管理: 磁盘管理.文件系统管理 RAID基本原理.LVM2 网络管理:TCP/IP协议.Linux网络属性配置 程序包管理:rpm,yum 进程管理:htop,glanc ...
随机推荐
- LVS+Keepalived搭建高可用负载均衡
应用环境: LVS负责多台WEB端的负载均衡(LB):Keepalived负责LVS的高可用(HA),这里介绍主备模型. 测试环境: 配置步骤: 1. 安装软件 在LVS-1和LVS-2两台主机上安装 ...
- Java复习总结——数据类型
包装类型 八个基本类型: Boolean/boolean/1 Byte/byte/8 Character/char/16 Short/short/16 Integer/int/32 Float/flo ...
- 牛客寒假算法基础集训营3B 处女座的比赛资格(用拓扑排序解决DAG中的最短路)
链接:https://ac.nowcoder.com/acm/contest/329/B 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言5242 ...
- 【POJ2230】Watchcow
题目大意:给定一个 N 个点,M 条边的无向图,要求不重复地经过每条边两次,并且从 1 号节点出发最后回到 1 号节点,求一条路径. 题解:不重复地经过两次这个操作很容易地通过无向图的建边方式来实现, ...
- HOG特征(Histogram of Gradient)学习总结
最近在做的项目有用到HOG+SVM这一方面的知识,参考相关论文和网上一些博文在此对HOG特征进行下总结. 参考资料: HOG的经典论文:Dalal N, Triggs B. Histograms of ...
- tensorflow-gpu版本出现libcublas.so.8.0:cannot open shared object file
文章主要参考以下博客https://www.aliyun.com/zixun/wenji/1289957.html 在利用GPU加速tensorflow时,出现了libcublas.so.8.0:ca ...
- 详解Vue 开发模式下跨域问题
vue项目中,前端与后台进行数据请求或者提交的时候,如果后台没有设置跨域,前端本地调试代码的时候就会报“No 'Access-Control-Allow-Origin' header is prese ...
- CodeForces621E 快速矩阵幂优化dp
有时些候在用快速矩阵幂优化dp的时候,它的矩阵乘法是不那么容易被具体为题目背景的意思的,大多数时候难以理解矩阵之间相乘的实际意义,正如有时候我们不知道现在在做手头这些事情的意义,但倘若是因一个目标而去 ...
- 【SSL】WebClient 请求 https 页面出错:未能创建 SSL/TLS 安全通道
#问题: 当向一个https的url上发送请求,报错:未能创建 SSL/TLS 安全通道: using (WebClient client = new WebClient()) { string ad ...
- JAVA核心技术I---JAVA基础知识(Jar文件导入导出)
一:Jar初识 (一)定义 同c++中的DLL一样 jar文件,一种扩展名为jar的文件,是Java所特有的一种文件格式,用于可执行程序文件的传播. jar文件实际上是一组class文件的压缩包 (二 ...