文件处理

文件处理

file_put_contents 将一个字符串写入文件

和依次调用 fopen()fwrite() 以及 fclose() 功能一样。

Flag

描述

FILE_USE_INCLUDE_PATH

在 include 目录里搜索 filename。 更多信息可参见 include_path

FILE_APPEND

如果文件 filename 已经存在,追加数据而不是覆盖。

LOCK_EX

在写入时获得一个独占锁。

<?php
$file = 'people.txt';
// Open the file to get existing content
$current = file_get_contents($file);
// Append a new person to the file
$current .= "John Smith\n";
// Write the contents back to the file
file_put_contents($file, $current);
?>

创建文件并写入输就输

$logs_file_url = APP_PATH."common/WxpayApiSdk/logs/".date('Y-m-d-H-i-s').'.text';
$myfile = fopen($logs_file_url, "a+") or die("Unable to open file!");   // 打开文件 w 只写(覆盖) a只写(追加)
// echo fgets($myfile);// 读取文件 
fwrite($myfile, $data.PHP_EOL);   // 写入文件
fclose($myfile);         // 关闭文件

PHP 创建文件 - fopen()

$myfile = fopen("testfile.txt", "w"); // 文件在项目的根目录下

PHP 打开文件 - fopen()

打开文件的更好的方法是通过 fopen() 函数; r 只读; 打不开文件或者没有 报错

$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");

PHP 写入文件 - fwrite()

$myfile = fopen("newfile.txt", "a+") or die("Unable to open file!");   // 打开文件 w 只写(覆盖) a只写(追加)
echo fgets($myfile);// 读取文件 
$txt = "Bill Gates".PHP_EOL;
fwrite($myfile, $txt);   // 写入文件
fclose($myfile);         // 关闭文件

PHP 读取文件 - fread()

如下 PHP 代码把 "webdictionary.txt" 文件读至结尾:

fread($myfile,filesize("webdictionary.txt"));

PHP 关闭文件 - fclose()

fclose() 函数用于关闭打开的文件。
$myfile = fopen("webdictionary.txt", "r");
// some code to be executed....
fclose($myfile);

PHP 读取单行文件 - fgets()

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

// 打开文件
$myfile = fopen("webdictionary.txt", "r") or die("Unable to open file!");

echo fgets($myfile);// 读取文件
fclose($myfile);// 关闭文件

while(!feof($myfile)) {
  echo fgets($myfile) . "<br>";
}
fclose($myfile);

模式

描述

r

打开文件为只读。文件指针在文件的开头开始。

w

打开文件为只写。删除文件的内容或创建一个新的文件,如果它不存在。文件指针在文件的开头开始。

a

打开文件为只写。文件中的现有数据会被保留。文件指针在文件结尾开始。创建新的文件,如果文件不存在。

x

创建新文件为只写。返回 FALSE 和错误,如果文件已存在。

r+

打开文件为读/写、文件指针在文件开头开始。

w+

打开文件为读/写。删除文件内容或创建新文件,如果它不存在。文件指针在文件开头开始。

a+

打开文件为读/写。文件中已有的数据会被保留。文件指针在文件结尾开始。创建新文件,如果它不存在。

x+

创建新文件为读/写。返回 FALSE 和错误,如果文件已存在。

unlink() 函数删除文件。

unlink(filename,context)

参数

描述

filename

必需。规定要删除的文件。

context

可选。规定文件句柄的环境。Context 是可修改流的行为的一套选项。

例子

$file = "test.txt";
if (!unlink($file)){
  echo ("Error deleting $file");
}
else{
  echo ("Deleted $file");
}