博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP-目录的基本操作
阅读量:5119 次
发布时间:2019-06-13

本文共 2138 字,大约阅读时间需要 7 分钟。

1.基本文件类型

  File    普通文件,如文本文件、可执行文件。

  Dir   目录文件,比如某个文件夹

  Unknow  未知文件

  在windows中只有上面三种文件类型,如果是linux系统还有下面文件类型

  Block  块设备,比如某个磁盘分区

  Char  字符设备,比如键盘、打印机

  Fifo  管道,用来将数据从一个进程传递到另一个进程

  Link  链接,相当于windows中的快捷方式

  

 使用filetype获得文件的类型

1 

  判断文件类型

1 

 

2.文件的属性

  

1 
"; 4 if(file_exists(__DIR__)) echo "目录".__DIR__."存在
"; 5 6 /*filesize()取得文件的大小,以字节为单位*/ 7 /*注:是取得文件的大小不是目录*/ 8 echo "文件".__FILE__."的大小是".filesize(__FILE__)."字节
"; 9 10 /*is_readable()判断文件是否可读*/11 if(is_readable(__FILE__)) echo "文件".__FILE__."可读
";12 13 /*is_writable()判断文件是否可写*/14 if(is_readable(__FILE__)) echo "文件".__FILE__."可写
";15 16 /*is_executable()判断文件是否可执行*/17 if(is_readable(__FILE__)) echo "文件".__FILE__."可执行
";18 19 date_default_timezone_set('PRC');20 21 /*filectime()文件的创建时间*/22 echo "文件的创建时间为".date('Y/m/d H:i:s',filectime(__FILE__))."
";23 24 /*filemtime()文件的修改时间*/25 echo "文件的修改时间为".date('Y/m/d H:i:s',filemtime(__FILE__))."
";26 27 /*fileatime()文件的最后访问时间*/28 echo "文件的最后访问时间".date('Y/m/d H:i:s',filectime(__FILE__))."
";29 30 /*stat()获取文件大部分属性*/31 print_r(stat(__FILE__));32 ?>

  注:windows系统下默认是不会更新访问时间的,具体可以参考。

 

3.目录的基本操作

  路径分隔符

    Linux系统中以'/'做为路径分隔符,像这样E:/xampp/htdocs/test.php

    Windows系统中以'\'作为路径分隔符E:\xampp\htdocs\test.php,但是Windows系统也是支持'/'作为分隔符的。

    所以为了保证程序的可移植性,最好用Linux的写法。

  解析路径 

1 
"; 4 5 /*dirname()返回一个路径中的目录部分*/ 6 echo "路径".__FILE__."的目录名是".dirname(__FILE__)."
"; 7 8 /*pathinfo()将一个路径中的信息以数组形式返回*/ 9 print_r(pathinfo(__FILE__));10 ?>

   遍历目录

1 
"; 5 6 /*readdir()接受一个资源句柄返回该目录当前指针位置的文件名,并将指针向下移动*/ 7 /*前两个文件名是 . 和 ..表示当前目录和上一级目录*/ 8 9 echo readdir($dir)."
";//.10 echo readdir($dir)."
";//..11 12 /*rewinddir()将目录指针重置到开头出*/13 rewinddir($dir);14 echo readdir($dir)."
";//.15 16 /*closedir()释放资源*/17 closedir($dir);18 ?>

   

1 
"; 9 }10 closedir($sdir);11 }12 13 dirlist(__DIR__);14 ?>

  计算目录大小

1 

   注:php5表示的最大整数为PHP_INT_MAX,这个数如果等于字节数,那么表示的文件大小基本上等于2GB,所以如果想计算2GB以上的文件,请换PHP7

  复制和删除目录

  

1 

 

转载于:https://www.cnblogs.com/patermenkey/p/8337911.html

你可能感兴趣的文章
尚学堂Java面试题整理
查看>>
MySQL表的四种分区类型
查看>>
[BZOJ 3489] A simple rmq problem 【可持久化树套树】
查看>>
STM32单片机使用注意事项
查看>>
swing入门教程
查看>>
好莱坞十大导演排名及其代表作,你看过多少?
查看>>
Loj #139
查看>>
hihocoder1187 Divisors
查看>>
Azure 托管镜像和非托管镜像对比
查看>>
js window.open 参数设置
查看>>
032. asp.netWeb用户控件之一初识用户控件并为其自定义属性
查看>>
Ubuntu下安装MySQL及简单操作
查看>>
前端监控
查看>>
clipboard.js使用方法
查看>>
移动开发平台-应用之星app制作教程
查看>>
leetcode 459. 重复的子字符串(Repeated Substring Pattern)
查看>>
伪类与超链接
查看>>
centos 7 redis-4.0.11 主从
查看>>
博弈论 从懵逼到入门 详解
查看>>
永远的动漫,梦想在,就有远方
查看>>