飙血推荐
  • HTML教程
  • MySQL教程
  • JavaScript基础教程
  • php入门教程
  • JavaScript正则表达式运用
  • Excel函数教程
  • AngularJS教程
  • UEditor使用文档
  • ThinkPHP5.0教程

在 PHP 中创建、打开和关闭文件

时间:2021-12-10  作者:匿名  

文件在应用程序中的使用

以下是我们在 Web 应用程序中需要文件的一些实际用例。

  • 通常数据存储在 JSON 文件中,amd Php 代码必须读取文件,然后在网页上显示数据。

  • 在一些简单的应用程序中,不使用数据库,而是将数据存储在文件中。

  • 在某些 Web 应用程序中,您可能需要准备一个文件供用户下载,在这种情况下,Php 代码将创建一个文件,在其中写入数据,然后允许用户下载它。

上面的用例只是为了表明经常需要文件处理。

要创建新文件或打开现有文件,我们使用fopen()PHP 提供的函数并使用关闭文件资源fclose()函数。


使用 PHP 创建文件

当我们使用该函数fopen()打开一个不存在的文件时,就会创建该文件。

我们举个例子,

$myfile = 'file.txt';
$handle = fopen($myfile, 'w') or die('Cannot open file: '.$myfile);

fopen()函数将文件名作为第一个参数,第二个参数表示打开文件的模式。

但是,如果文件不存在,并且您正在使用fopen()创建文件,那么您应该保持模式为w,这意味着写入模式。我们将在下面的部分中了解各种模式。

用 PHP 打开文件

要打开文件,使用相同的fopen()函数。打开文件的原因可能有很多,例如读取文件内容、将新内容写入文件或将附加内容附加到文件中的现有内容。

我们举一个简单的例子,然后我们将讨论打开文件的不同模式。

$myfile = 'file.txt';
//打开 file.txt 文件
$handle = fopen($myfile, 'w') or die('Cannot open file: '.$myfile);

同样,fopen()function 需要两个强制参数,一个是文件名,第二个代表mode。

以下是不同的模式以及应该在fopen()函数中作为参数传递的文字。

模式字符说明
读写w如果文件存在,则打开它以允许在其中进行写操作,如果文件不存在,则创建一个新文件。在这种模式下,文件中的所有现有数据都会被删除。
只读r文件以读取模式打开,文件指针从文件开头开始。
追加a文件以写入模式打开,其中文件的现有内容被删除。在现有内容之后添加的新内容。
创建只写文件x创建一个具有只写访问权限的新文件。如果文件已经存在,则返回错误。

除了上面指定的模式之外,我们还可以添加+字符串文字,以允许对给定模式进行读取和写入(默认)操作。

例如,r+模式打开文件进行读写。w+, 分别a+允许对文件进行读取操作以及默认的写入和追加操作。

从技术上讲,文件未打开,fopen()将资源(文件)绑定到流,然后可用于从文件读取或将数据写入文件。

此外,如果文件是本地文件,文件名应该是完全限定名称以及相对路径。该文件名,也可以指定远程FIEL的路径的URL。在这种情况下,一旦 PHP 意识到文件路径不是本地的,它将检查php.ini(PHP 的配置文件)中的allow_url_fopen属性值。如果它是false,PHP 将打印警告并且调用将失败。fopen()

使用 PHP 关闭文件

使用文件资源后关闭它是一种很好的做法。在 PHP 中fclose()函数用于关闭文件资源。它将文件名作为参数或保存文件资源指针的变量作为参数。让我们举个例子:

$myfile = 'file.txt';
//opens the file.txt file or implicitly creates the file
$handle = fopen($myfile, 'w') or die('Cannot open file: '.$myfile); 
// closing a file
fclose($handle);

让我们举一个简单的例子,我们将创建一个 PHP 文件来创建一个文本文件,然后打开同一个文件以在其中写入内容。

下面是我们将保留在read-file.php文件中的代码,用于打开file.txt文本文件以在其中写入数据。

$myfile = 'include/file.txt';
//opens the file.txt file
$handle = fopen($myfile, 'w') or die('Cannot open file: '.$myfile);
// close a file
fclose($handle);

我们可以提供要读取的文件的完整路径,也可以提供如上例所示的相对路径。

在接下来的教程中,我们将学习如何读取、写入、将数据附加到文件中。

搜你所爱
php入门教程:目录
湘ICP备14001474号-3  投诉建议:234161800@qq.com   部分内容来源于网络,如有侵权,请联系删除。