您的位置:首页 > Web前端

前端PHP入门-028-文件操作-掌握级别

2016-08-09 07:05 253 查看

作为刚入门我们员经常会干的意见事情是ctrl+c和ctrl+v,鼠标右键删除文件、会control+c(或右键)复制、粘贴文件以及新建文件,还可以设置文件的是否为只读文件等等



可不可以写入修改配置文件?

是不是可以做PHP安装的时候检测文件的权限

是不是可以做生成Html文件等等很多不同的操作

对于美工的各位同学,可能不太好理解,也就是说让程序去控制文件的操作,让我们变的更懒一些


读取文件


掌握函数的使用



readfile 读取文件


int readfile ( string $文件名)



功能: 传入一个文件路径,输出一个文件。

代码演示:

只要传入文件名或者指定的文件路径就把文件读取出来了

<?php

//linux类的读了方式,它没有盘符的概念

readfile("/home/paul/pangsir.txt");

//windows类的读取方式,有的新机器是不允许读取根目录下的文件

readfile("d:\\pangsir.html");

//个人习惯这种

//readfile("d:/pangsir.html");

?>

[/code]

运行效果:



注意:上面的代码中windows的斜线是
\\
斜线,可能会转义掉一些字符。因此,我们写的时候写上两个斜线。

问题:
我们学习过的特殊字符和转义字符有哪些?

file_get_contents 打开文件

单纯打文件就直接输出了,有没有打开文件后,能够赋值给一个变量的操作方式呢?


string file_get_contents ( string filename)



功能:


传入一个文件或文件路径,打开这个文件返回文件的内容。

文件的内容是一个字符串。



<?php


$filename = 'd:/pangsir.html';


$filestring = file_get_contents($filename);

echo '我要输出了--->>>>';

echo $filestring;

?>

[/code]

就打开了一个文件,并且将文件当中的内容进行了输出。



扩展代码:注意因为我使用的是html文件,有的时候是有问题的呵呵!

<?php

//假设我们有一个多行的文件叫pangsir.html,没有的话你可以新建一个这个文件

 $filename = 'd:/pangsir.html';



//打开这个文件,将文件内容赋值给$filestring

$filestring = file_get_contents($filename);


//因为每一行有一个回车即\n,我用\n来把这个字符串切割成数组

$filearray = explode("\n", $filestring);


//把切割成的数组,下标赋值给$key,值赋值给$val,每次循环将$key加1。

while (list($key, $val) = each($filearray)) {

++$key;

$val = trim($val);


//用的单引号,单引号不解释变量进行了拼接而已

print 'Line' . $key .':'.  $val.'<br />';

}

?>

[/code]

fopen、fread、fclose操作读取文件

file_get_contents打开文件的方式简单、粗暴。下面的


resource fopen ( string $文件名, string 模式)

string fread ( resource $操作资源, int 读取长度)

bool fclose ( resource $操作资源 )



通常操作方式:


1.打开资源

2.使用相关函数进行操作

3.关闭资源



fopen函数

fopen函数的功能是打开文件,参数主要有两个:

文件打开的路径

打开文件的模式

返回类型是一个资源类型,我们第一次遇到了之前基础类型的时候讲到的资源类型。

资源类型需要其他的函数来操作这个资源。所有的资源有打开就要有关闭。

fread函数

函数的功能的功能是读取打开的文件资源。

读取指定长度的文件资源,读取一部份向后移动一部份。

至到文件结尾。

fclose函数

fclose函数的功能是关闭资源。

资源有打开就有关闭。

模式说明
r 只读方式打开,将文件指针指向文件头。
r+读写方式打开,将文件指针指向文件头。
w写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建
w+读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建
a写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建
a+读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之
x创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建
x+创建并以读写方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建
这个好好记住,很有用!


接触学习
r模式
,下结课我们在将写入的时候再来讲讲其他几个模式

1.打开文件

<?php

//你可以创建一个NoAlike.txt,以只读模式打开

$fp = fopen('pangsir.txt', "r");



//var_dump()操作一下$fp看看效果,输出的是不是只有类型提示的是resource

var_dump($fp);

?>

[/code]

2.读取文件

<?php

$fp = fopen('pangsir.txt', "r");


//打开一个文件类型后,读取长度

$contents = fread($handle, 1024);

?>

[/code]

3.关闭文件

<?php

$fp = fopen($filename, 'r');

$contents = fread($fp, 1024);

fclose($fp);

echo $contents;

?>

[/code]


其他注意事项:



模式说明
t
windows下将\n转为\r\n
b二进制打开模式
来自为知笔记(Wiz)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: