php对文件的操作
如何让自己磁盘中的文件夹和目录显示在网页上?那就来看一下,用php是怎么来操作他们的吧
运行后看一下结果
file 指的是文件的意思
再来换个路径
运行后
这里的dir是目录的简写
其实判断文件的类型就两种,是文件还是目录
这里写的路径都是在当前目录下建的文件和目录,如图
wenjiancaozuo.php 是当前在写代码的文件名
qq.txt 111.php 这三个都在同一目录下的,如果自己要写的话,可以随便起名字
接下来继续来看
上句代码说过了 dir 是目录的简写,经过判断文件的类型 111.php 就是目录,那运行这句代码,看他会返回什么内容吧
再来看非目录会返回什么值
如果把上句代码中dir 换成file 也是可以的 意思就是判断文件是不是文件,是的话返回true ,不是的话返回false
接下来再说一下文件属性
什么叫做文件属性呢? 截个图给大家看一下
像这种的就叫文件属性
还是来一句一句的看代码
还是需要一个文件的路径
用的是qq.txt 的
看一下运行后的结果
得出的是一个时间戳
把它转换一下能看懂的
使用date方法
看一下运行结果
和文件中显示的时间是一样的
再来看一下
和上句就差一个字母,运行的结果和上次访问时间是一样的
这个也是差一个字母,和上面两种时间运行结果是一样的
来看一下运行结果
文件里面是没有任何内容的,所以文件大小为0
接下来往里面输入点内容,然后再看运行结果
然后运行刚才的那句代码,结果为:
这个文件是存在的,运行一下看看会返回什么内容
再写个不存在的文件路径,看看会返回什么值
运行后
说一下文件路径
运行一下
显示了服务器的根路径
这是从上级目录下找的一个文件
运行后
显示的是那个文件的文件名
basename 还有一种用法,可以写两个参数
看一下运行的结果
看一下运行结果
除去文件名就剩两个点了
运行后
返回的是数组
看一下运行结果
看一下运行结果
可以根据括号里面参数的不同,返回的结果也会不同
比如:
这样找到的就是后缀有.txt的
这样找到的文件就是后缀有.php的
可以用上面的遍历方法,把111.php目录下的文件都遍历出来
看一下运行结果
来看一下运行的结果
验证一下,看看结果5是不是对的
3+2 结果是5
看一下这个运行的结果是什么
当前目录下所有的文件
要是想获取带有路径的文件名,可以这样写
看一下运行的结果
上面有一个.还有.. 这里要注意一下
. 是代表当前目录 ..代表上级目录
一般操作的话,注意要把那两个排除掉
//获取某一个目录下所有文件的大小
function Fsize($fname)
{
$size = 0;
$dir = opendir($fname); while($u = readdir($dir))
{
if($u=="." || $u=="..")
{
}
else
{
$zfname = $fname."/".$u;
if(is_file($zfname))
{
$size +=filesize($zfname);
}
}
}
//找到子目录,获取子目录下文件大小
rewinddir($dir);
while($u = readdir($dir))
{
if($u=="." || $u=="..")
{
}
else
{
$zfname = $fname."/".$u;
if(is_dir($zfname))
{
$size += Fsize($zfname);
}
}
}
closedir($dir);
return $size;
}
echo Fsize("./111.php");
这个是取文件的大小
来运行一下
验证一下
再找个有内容的文件
把路径换成这个,看一下运行的结果
来验证一下
新建一个文件夹或是删除一个文件夹,并不是只有右击一种方法,还可以用代码来操作
先来看没有运行代码之前的目录下有哪些文件
点击运行代码后再来看有没有增加名为aa的文件夹
添加成功
再来看删除怎么做
点击运行后,名为aa 的文件夹被删除
当然这里要注意一下,代码删除的只能是空文件夹,有内容的文件夹是删不了的
前面的路径是老路径,后面的是新路径并且给它改了一个名字
先看一下没运行前的文件
运行代码后,原先的目录里没有那个文件夹了
再看它的上级目录
有tupian.php 这一项
运行后
创建成功
前面的是老路径,后面的是新路径
运行后看一下文件有没有复制成功
运行成功
运行后,看文件还有没有
名为22.txt的文件已经被删除
在当前目录下的22文档中写点内容,然后保存
然后是代码部分
运行后,看看能不能把内容输出
在网页上输出成功
这个方法不仅可以获取本地内容,还可以获取远程内容,拿连接百度做个列子
运行后
获取的是百度的页面
前面的参数是文件路径,后面的是要即将添加的内容
运行后看文件内有没有添加上内容
添加成功
看一下运行结果
看一下运行结果
里面之前的内容都没有了,而是重新输入的内容
把w改成a
运行一下
没有重写内容而是追加了一句
运行一下
出来的是文件内 内容的第一个字母
多复制两句看看
运行后
这个方法可以读取内容,每一次读取一个字符
运行前先补充一下文件里面的内容,然后保存
运行代码
读取到的是第一行
再多写一句,运行
读取到的是第一行和第二行的内容
看一下运行结果
输出的是三个字符串
上面能读写的方法,只能对于系统自带的文件,例如.txt .php 等,它只能够操作服务器的,不能操作客户端
上面讲了一个删除文件夹的方法,但是只能删除没有内容的文件夹,该怎么删除有内容的文件呢,看一下做法
就删这个文件夹吧
运行一下,再看看目录下还有没有这个文件夹
删除成功
php对文件的操作的更多相关文章
- Linux命令-文件文本操作grep
文件文本操作 grep 在文件中查找符合正则表达式条件的文本行 cut 截取文件中的特定字段 paste 附加字段 tr 字符转换或压缩 sort 调整文本行的顺序,使其符合特定准则 uniq 找出重 ...
- [No000083]文件与文件夹操作
#region Folder option 文件夹操作 /// <summary> /// 指定目录是否存在 /// </summary> /// <param name ...
- PHP 文件夹操作「复制、删除、查看大小」递归实现
PHP虽然提供了 filesize.copy.unlink 等文件操作的函数,但是没有提供 dirsize.copydir.rmdirs 等文件夹操作的函数(rmdir也只能删除空目录).所以只能手动 ...
- c语言文件读写操作总结
C语言文件读写操作总结 C语言文件操作 一.标准文件的读写 1.文件的打开 fopen() 文件的打开操作表示将给用户指定的文件在内存分配一个FILE结构区,并将该结构的指针返回给用户程序,以后用户程 ...
- OC NSFileHandle(文件内容操作)
OC NSFileHandle(文件内容操作) 初始化 [NSFileHandle fileHandleForUpdatingAtPath:@"data.txt"]; //file ...
- python对文件的操作
一.python中对文件.文件夹操作时经常用到的os模块和shutil模块常用方法. 1.得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd() 2.返回指定目录下的所有文件 ...
- [转]Android - 文件读写操作 总结
转自:http://blog.csdn.net/ztp800201/article/details/7322110 Android - 文件读写操作 总结 分类: Android2012-03-05 ...
- Adobe AIR对本地文件(XML文件)的操作
引用:http://addiwang.blog.163.com/blog/static/118130772011221114230288/ Air的文件操做主要涉及两个类,FIle和FileStrea ...
- PHP 文件的操作
操作文件的步骤: 1.打开文件2.做操作PS!!!3.关闭文件 打开 操作
- python 异常处理、文件常用操作
异常处理 http://www.jb51.net/article/95033.htm 文件常用操作 http://www.jb51.net/article/92946.htm
随机推荐
- odoo开发笔记--模型中常用的方法
create方法在数据表中插入一条记录(或新建一个对象的resource)格式:def create(self,cr,uid,vals,context={})参数:vals:待新建记录的字段值,是一个 ...
- MVC3学习:基于ObjectContext的数据增删改查操作
数据库里面的表格,映射为对应的实体类.实体类的编写,可以自己手动编写,也可以使用工具或插件自动生成.在MVC3里面,我们可以使用VS的POCO插件自动生成实体类.如下图: 关于POCO插件的安装与使用 ...
- linux使用find和crontab命令定期清理过期文件
crontab 命令 crontab 命令是 Linux 中用来设定重复执行命令或脚本的工具.它能够在指定的时间段内,按照需求以某一时间间隔执行命令或脚本. crontab 的基本用法 crontab ...
- JavaScript -- Screen
-----041-Screen.html----- <!DOCTYPE html> <html> <head> <meta http-equiv=" ...
- Python基础之好玩的字符串格式化之类C风格
今天白月黑羽和大家说说字符串格式化,在python3中,字符串格式化主要有2种方法,今天先和大家介绍类C风格的printf. printf 风格 这种方式 和 传统的C语言printf函数使用一样的格 ...
- canvas实现涂鸦板
实现思路:监听鼠标按下.移动.松开事件,将鼠标按下的值赋值给moveTo的x和y值,作为起始位置.在移动事件中,将鼠标距离可视区x和y值赋给lineTo,再将路径闭合.以下是具体的代码 <!DO ...
- 百度2015校园招聘面试题回忆录(成功拿到offer)
引言 盼望着,盼望着……今年终于轮到我找工作了,还深深记得去年跟在师兄后面各种打酱油的经历,当时觉得找工作好难啊,怎么面一个败一个,以后还能找到工作不? 不过当时的失败也是理所当然的,那时候没有做任何 ...
- 单例模式——java设计模式
单例模式 目录: 一.何为单例 二.使用Java EE实现单例模式 三.使用场景 一.何为单例 确保一个类只有一个实例,并且提供了实例的一个全局访问点 1.1 单例模式类图 ...
- 回头再看看babel的实现原理
一.前言 babel在大家的工作中应该没少用,但是为什么它能将ES6转成ES5呢?一个有态度的前端er肯定会想抛开迷雾,看看其中的奥秘. 记得很早前自己有去了解过相关方面的内容,但是时间久远,现在已是 ...
- linux 安装 nvm
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.31.1/install.sh | bash 或者 wget -qO- htt ...