日期:2010-09-09  浏览次数:20535 次

Aiyiweb.Com提示:fopen() 函数用于在 PHP 中打开文件。

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

打开文件

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

此函数的第一个参数含有要打开的文件的名称,第二个参数规定了使用哪种模式来打开文件:

<html>
<body>

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

</body>
</html>

文件可能通过下列模式来打开:

模式 描述
r 只读。在文件的开头开始。
r+ 读/写。在文件的开头开始。
w 只写。打开并清空文件的内容;如果文件不存在,则创建新文件。
w+ 读/写。打开并清空文件的内容;如果文件不存在,则创建新文件。
a 追加。打开并向文件文件的末端进行写操作,如果文件不存在,则创建新文件。
a+ 读/追加。通过向文件末端写内容,来保持文件内容。
x 只写。创建新文件。如果文件以存在,则前往 FALSE。
x+

读/写。创建新文件。如果文件已存在,则前往 FALSE 和一个错误。

注释:如果 fopen() 无法打开指定文件,则前往 0 (false)。

例子

如果 fopen() 不能打开指定的文件,下面的例子会生成一段音讯:

<html>
<body>

<?php
$file=fopen("welcome.txt","r") or exit("Unable to open file!");
?>

</body>
</html>

关闭文件

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

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

//some code to be executed

fclose($file);
?>

检测 End-of-file

feof() 函数检测能否已达到文件的末端 (EOF)。

在循环遍历未知长度的数据时,feof() 函数很有用。

注释:在 w 、a 以及 x 模式,您无法读取打开的文件!

if (feof($file)) echo "End of file";

逐行读取文件

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

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

例子

下面的例子逐行读取文件,直到文件末端为止:

<?php
$file = fopen("welcome.txt", "r") or exit("Unable to open file!");
//Output a line of the file until the end is reached
while(!feof($file))
  {
  echo fgets($file). "<br />";
  }
fclose($file);
?>

逐字符读取文件

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

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

例子

下面的例子逐字符地读取文件,直到文件末端为止:

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

PHP Filesystem 参考手册

如需完整的 PHP 文件系统参考手册

PHP Filesystem 简介

Filesystem 函数允许您访问和操作文件系统。

安装

Filesystem 函数是 PHP 核心的组成部分。无需安装即可使用这些函数。

Runtime 配置

文件系统函数的行为遭到 php.ini 中设置的影响。

文件系统配置选项:

名称 默认 描述 可改变
allow_url_fopen "1"

本选项激活了 URL 方式的 fopen 封装协议使得可以访问 URL 对象例如文件。默认的封装协议提供用 ftp 和 http 协议来访问近程文件,一些扩展库例如 zlib 可能会注册更多的封装协议。

(PHP 4.0.4 版当前可用。)

PHP_INI_SYSTEM
user_agent NULL

定义 PHP 发送的 User-