常规的操作文件方法
一般操作文件的方法分四个步骤:1.打开文件 2.读入文件内容 3.写入内容到文件 4.关闭文件
打开或创建文件
函数:fopen(文件名, 打开方式)
文件名必须是文件的全路径,打开方式有以下几种:
“r” 只读方式打开,将文件指针指向文件头。
“r+” 读写方式打开,将文件指针指向文件头。
“w” 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
“w+” 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
“a” 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
“a+” 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
“x” 创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE
“x+” 创建并以读写方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE
使用方法:
$myFile = fopen("testfile.txt", "w");读取文件内容
函数:fread(文件句柄, 读取大小)
返回读到的内容,如果失败,则返回false
使用方法:
$myFile = fopen(“testfile.txt”, “r”);
//filesize是判断文件的大小
text=fread(text = fread(text=fread(myfile, filesize(“testfile.txt”));写入内容到文件
函数:fwrite(文件句柄, 写入内容)
返回写入的字符数,出现错误时则返回 false。
使用方法:
$myfile = fopen("testfile.txt", "w");
$txt = "Bill Gatesn";
fwrite($myfile, $txt);关闭文件
函数:fclose(文件句柄)
使用方法:
$myfile = fopen("testfile.txt", "w");
fclose($myfile);实例
//以读写的方式打开文件,如果文件不存在则创建
$file = fopen("testFile.txt", 'w+');
//如果打开失败则终止
if($file == false)
{
exit("open file fail...");
}
//要写入文件的信息
$txtWrite = "I am a coder!";
//写入信息到文件
if(fwrite($file, $txtWrite)==false)
{
exit("write file fail...");
}
//测试了如果写完不关闭,不能读取
fclose($file);
//以读的方式打开
$file = fopen("testFile.txt", "r");
$txtRead = fread($file, filesize("testfile.txt"));
//如果读取失败则终止
if($txtRead==false)
{
exit("read file fail...");
}
echo "Read Success: ".$txtRead;
fgets - 从文件指针中读取一行
// fgets — 从文件指针中读取一行
// string fgets ( resource $handle [, int $length ] )
// 文件指针必须是有效的,必须指向由 fopen() 或 fsockopen() 成功打开的文件(并还未由 fclose() 关闭)。
$file = fopen('fopen.txt','a+');
$txt = fgets($file);
echo $txt;
// 读取所有行
// 如果之前读过一行的话
// 它是会绕过的,不会再去读取已经读取过的那一行
while($content=fgets($file)){
echo "";
echo $content;
}
file - 把整个文件读入一个数组中
// array file ( string $filename [, int $flags = 0 [, resource $context ]] )
// file — 把整个文件读入一个数组中
$arr = file('fopen.txt');
var_dump($arr);
// 是以换行符 n 为标准
// 分隔符
file_get_content - 将整个文件读入一个字符串
// string file_get_contents ( string $filename [, bool $use_include_path = false [, resource $context [, int $offset = -1 [, int $maxlen ]]]] )
// 将整个文件读入一个字符串
$content = file_get_contents('fopen.txt');
// 字符串
echo $content;
fopen
// 创建文件
// "w" 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
// "w+" 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
// "a" 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
// "a+" 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
// "x" 创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE
// "x+" 创建并以读写方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE
// "r+" 读写方式打开,将文件指针指向文件头。
// "r" 只读方式打开,将文件指针指向文件头。
/**
* 一般操作文件的方法分四个步骤:1.打开文件 2.读入文件内容 3.写入内容到文件 4.关闭文件
*/
// 判断一个文件是否存在用 file_exists()
$filename = 'fopen.txt';
if(file_exists($filename)){
echo "";
echo "该文件已经存在";
echo "";
// 读取文件内容
// 取得文件大小 filesize(文件名)
$file = fopen('fopen.txt','a+');
echo $filename . ': ' . filesize ( $filename ) . ' bytes' ;
echo "";
$content = fread($file,filesize($filename));
echo $content;
}else{
// 创建文件
$file = fopen('fopen.txt','a+');
var_dump($file);
}
// 上面这种情况是保证只执行一次
fwrite
// 10.1.1.3 写入内容到文件
// 函数:fwrite(文件句柄, 写入内容) 返回写入的字符数,出现错误时则返回 false。
$file = fopen('fopen.txt','a+');
$txt = "Bill Gatesn";
fwrite($file,$txt);
// fclose()
fclose($file);
echo "已经写入了";
readfile - 函数用于读入一个文件,并将其写入到输出缓冲中,如果出现错误则返回false
// readfile()函数用于读入一个文件,并将其写入到输出缓冲中,如果出现错误则返回false
// int readfile ( string $filename [, bool $use_include_path = false [, resource $context ]] )
$txt = readfile('fopen.txt');
echo $txt;
// 返回的是字符串的个数
test.php
//以读写的方式打开文件,如果文件不存在则创建
$file = fopen("testFile.txt", 'w+');
//如果打开失败则终止
if($file == false)
{
exit("open file fail...");
}
//要写入文件的信息
$txtWrite = "I am a coder!";
//写入信息到文件
if(fwrite($file, $txtWrite)==false)
{
exit("write file fail...");
}
//测试了如果写完不关闭,不能读取
fclose($file);
//以读的方式打开
$file = fopen("testFile.txt", "r");
$txtRead = fread($file, filesize("testfile.txt"));
//如果读取失败则终止
if($txtRead==false)
{
exit("read file fail...");
}
echo "Read Success: ".$txtRead;
评论列表(0条)