PHP重点知识复习 – 文件及目录处理

1.文件读取/写入

fopen() 用来打开一个文件,打开时需要指定打开模式

打开模式有 r r+ w w+ a a+ x x+

2.不需要fopen打开的函数

file_get_contents()  直接打开一个文件

file_put_contents()  直接将字符串写入到一个文件

file() 将文件内容写入到一个数组

readfile() 读取一个文件,并输出到输出缓冲

3.访问远程文件

如果需要访问远程文件,必须在PHP的配置文件中激活“allow_url_fopen”选项,才能使用fopen( )函数打开远程文件。

HTTP协议打开只能使用只读模式,FTP协议打开使用只读或只写

4.目录操作函数

名称相关:basename()、dirname()、pathinfo()

目录读取:opendir()、readdir()、closedir()、rewinddir()

创建目录:mkdir()

删除目录:rmdir()  注意文件夹内有内容是不能删除的,需要先把里面的内容删除掉。

5.其他函数

filesize() 文件大小

目录大小:disk_free_space()、disk_total_space()

文件类型:filetype()

重命名文件或目录:rename()

此部分参考 《文件系统处理》

解题方法:

牢记文件的操作函数和几种打开模式

理解目录的操作步骤

真题测试:

1.在文件的前面添加"hello world"

$file = './1.txt';

$handle = fopen($file, 'r');

$content = fread($handle, filesize($file));	//注意这里一定要有filesize读取文件大小

$content = 'Hello World'. $content;

fclose($handle);

$handle = fopen($file, 'w');

fwrite($handle, $content);

fclose($handle);

2.通过PHP函数的方式对目录进行遍历,写出程序

$dir = './test';

function loopdir($dir)
{
	$handle = opendir($dir);
	while (false !== ($file = readdir($handle)))	//使用false判断当前目录是否遍历完成
	{
		if ($file != '.' && $file != '..'){	//这里必须排除当前目录(.)和上级目录(..),如果不排除非常危险,而且得不出正确结果
			echo $file. '<br>';
			if (is_dir($dir. '/'. $file)){
				loopdir($dir. '/'. $file);
				closedir($dir. '/'. $file);
			}
		}		
	}
	closedir($handle);
}

loopdir($dir);

 

参考内容:

文件系统处理

文件的上传和下载

 

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇