php 学习笔记 -- 文件(五)

来源:互联网 发布:世界销售网络分布图 编辑:程序博客网 时间:2024/05/16 17:50

1. 打开文件

fopen() 函数用于在 PHP 中打开文件。

resource fopen  ( string $filename  , string $mode  [, bool $use_include_path  = false  [, resource $context  ]] )

参数一:含有要打开的文件的名称;
参数二:规定了使用哪种模式来打开文件;
如果也需要在 include_path 中搜寻文件的话,可以将可选的第三个参数 use_include_path 设为 ‘1’ 或 TRUE 。

<?php    $file = fopen("a1.txt", "r");?>

fopen() 中 mode 的可能值列表

‘r’ 只读方式打开,将文件指针指向文件头。

‘r+’ 读写方式打开,将文件指针指向文件头。

‘w’ 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。

‘w+’ 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。

‘a’ 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。

‘a+’ 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。

‘x’ 创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回
FALSE ,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。这和给 底层的 open(2) 系统调用指定 O_EXCL|O_CREAT 标记是等价的。

‘x+’ 创建并以读写方式打开,其他的行为和 ‘x’ 一样。

如果 fopen() 函数无法打开指定文件,则返回 0 (false)。

2. 关闭文件

fclose() 函数用于关闭打开的文件。

bool fclose  ( resource $handle  )   

参数:文件指针必须有效,并且是通过 fopen() 或 fsockopen() 成功打开的。

<?php    $file = fopen("a1.txt","r");    //TODO    fclose($file);?>

3. 检测文件末尾

feof() 函数检测是否已到达文件末尾(EOF)。

bool feof  ( resource $handle  )

参数:文件指针必须是有效的,必须指向由 fopen() 或 fsockopen() 成功打开的文件(并还未由 fclose() 关闭)。

在循环遍历未知长度的数据时,feof() 函数很有用。在 w 、a 和 x 模式下,您无法读取打开的文件!

<?php    if (feof($file)) echo "文件结尾";?>

4. 逐行读取文件

fgets() 函数用于从文件中逐行读取文件。

string fgets  ( resource $handle  [, int $length  ] )

参数一:文件指针必须是有效的,必须指向由 fopen() 或 fsockopen() 成功打开的文件(并还未由 fclose() 关闭)。

参数二: 从 handle 指向的文件中读取一行并返回长度最多为 length - 1 字节的字符串。碰到换行符(包括在返回值中)、EOF 或者已经读取了 length - 1 字节后停止(看先碰到那一种情况)。

在调用该函数之后,文件指针会移动到下一行。

<?php$file = fopen("a1.txt", "r");while(!feof($file)) {    echo  fgets($file)."<br>";}fclose($file);

5. 逐字符读取文件

fgetc() 函数用于从文件中逐字符地读取文件。

string fgetc  ( resource $handle  )

参数 : 同上handle参数

在调用该函数之后,文件指针会移动到下一个字符。

<?php$file=fopen("a1.txt","r") or exit("Unable to open file!");while (!feof($file)){    echo fgetc($file);}fclose($file);?>

源码

点击查看源码

参考

http://www.phpxs.com/j/php

http://www.w3cschool.cn/index-36.html

php 参考手册

0 0
原创粉丝点击