了解PHP为何要操作文件
在程序运行时,程序本身和数据一般都存在内存中,当程序运行结束后,存放在内存中的数据被释放。如果需要长期保存程序运行所需的原始数据,或程序运行产生的结果,就需要把数据存储在文件或数据库。一般地,小型数据存储在文件中,海量数据存储在数据库中。
掌握文件打开函数fopen()
fopen() 函数用于在 PHP 中打开文件
此函数的第一个参数含有要打开的文件的名称,第二个参数规定了使用哪种模式来打开文件:
<html>
<body>
<?php
$file=fopen("Hello.txt","r");
?>
</body>
</html>
如果 fopen() 函数无法打开指定文件,则返回 0 (false)。
掌握文件读取函数fread()
fread() 函数读取打开的文件
函数会在到达指定长度或读到文件末尾(EOF)时(以先到者为准),停止运行。
该函数返回读取的字符串,如果失败则返回 FALSE。
示例:读取整个文件
<?php
$file = fopen("test.txt","r");
$contents = fread($file,filesize("test.txt"));
fclose($file);
?>
掌握文件关闭函数fclose()
fclose() 函数关闭打开的文件。
该函数如果成功则返回 TRUE,如果失败则返回 FALSE。
示例:
<?php
$file = fopen("test.txt","r");
//some code to be executed
fclose($file);
?>
握读取单行文件函数fgets()
fgets() 函数从打开的文件中返回一行
fgets() 函数会在到达指定长度( length - 1 )、碰到换行符、读到文件末尾(EOF)时(以先到者为准),停止返回一个新行。
如果失败该函数返回 FALSE
示例:读取一行
<?php
$file = fopen("test.txt","r");
echo fgets($file);
fclose($file);
?>
掌握读取文件函数
file_get_contents() 把整个文件读入一个字符串中。
该函数是用于把文件的内容读入到一个字符串中的首选方法。如果服务器操作系统支持,还会使用内存映射技术来增强性能。
示例:
<?php
echo file_get_contents("test.txt");
?>
掌握文件上传的基本原理
在前端使用一个form表单提交本地文件到服务器,然后在服务器端将文件从临时目录转移到指定目录的过程成为文件上传
掌握实现文件上传表单需要加入的内容
第一:表单的发送方式为post
第二:添加enctype="multipart/form-data"
第三:MAX_FILE_SIZE 隐藏字段
MAX_FILE_SIZE 隐藏字段(单位为字节)必须放在文件输入字段之前,其值为接收文件的最大尺寸。这是对浏览器的一个建议,PHP 也会检查此项。
在浏览器端可以简单绕过此设置,因此不要指望用此特性来阻挡大文件。(不过鉴于友好性最好还是在表单中加上此项目,因为它可以避免用户在花时间等待上传大文件之后才发现文件过大上传失败的麻烦。)
掌握服务器端$_FILES全局数组中包含有哪些值
全局变量 $_FILES的应用
$_FILES['file']['name'] 为上传文件的原文件名
$_FILES['file']['type'] 为上传文件的类型
$_FILES['file']['size'] 已上传文件的大小,单位为字节
$_FILES['file']['tmp_name'] 文件被上传后在服务端储存的临时文件名
$_FILES['file']['error'] 文件上传的错误代码