更多: zhilu jiaocheng

示例

<?php
$file_handle = fopen("sample-file.txt", "w"); // 打开文件以便写入
$handle = fopen("http://www.onitroad.com/", "r"); // 打开网站
?>

如果无法打开文件,此函数返回 FALSE 和错误。

语法

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

参数

filename

如果 filename 是 "scheme://..." 的格式,则被当成一个 URL,PHP 将搜索协议处理器(也被称为封装协议)来处理此模式。如果该协议尚未注册封装协议,PHP 将发出一条消息来帮助检查脚本中潜在的问题并将 filename 当成一个普通的文件名继续执行下去。

如果 PHP 认为 filename 指定的是一个本地文件,将尝试在该文件上打开一个流。该文件必须是 PHP 可以访问的,因此需要确认文件访问权限允许该访问。如果激活了安全模式或者 open_basedir 则会应用进一步的限制。

如果 PHP 认为 filename 指定的是一个已注册的协议,而该协议被注册为一个网络 URL,PHP 将检查并确认 allow_url_fopen 已被激活。如果关闭了,PHP 将发出一个警告,而 fopen 的调用则失败。

mode

mode 参数指定了所要求到该流的访问类型。可以是以下值:

mode说明
'r'只读方式打开,将文件指针指向文件头。
'r+'读写方式打开,将文件指针指向文件头。
'w'写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
'w+'读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
'a'写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
'a+'读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
'x'创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。这和给 底层的 open(2) 系统调用指定 O_EXCL
'x+'创建并以读写方式打开,其他的行为和 'x' 一样。
'c'打开该文件仅用于写入。如果文件不存在,则创建该文件。如果它存在,它既不会被截断(与“w”相反),也不会调用此函数失败(与“x”的情况相同)。文件指针位于文件的开头。如果需要在尝试修改文件之前获得建议锁(请参见flock()),这可能很有用,因为使用“w”可以在获得锁之前截断文件(如果需要截断,则可以在请求锁后使用ftruncate().'c+'

use_include_path

如果也需要在 include_path 中搜寻文件的话,可以将可选的第三个参数 use_include_path 设为 '1' 或者 TRUE。

context

在 PHP 5.0.0 中增加了对上下文(Context)的支持。

PHP的fopen函数的作用是什么?

PHP fopen () 是内置函数,用于打开文件或者 URL。

日期:2020-09-17 00:10:28 来源:oir作者:oir