在本教程中,我们将学习如何处理文件,包括使用各种方便的PHP文件函数来打开文件、关闭文件、从文件读取内容和写入内容到文件,以及测试文件是否结束。
文件是存储在硬盘等存储媒体上的字节序列。PHP提供了许多有用的函数,方便你有效地处理文件。
不同的平台有不同的方法来处理文件路径。例如,UNIX和Linux系统在文件路径中使用斜杠作为分隔符,如下所示:
/www/tmp/test.txt
而Windows系统使用反斜杠作为分隔符:
\www\temp\test.txt
PHP会自动将反斜杠转换为斜杠,因此使用以斜杠作为分隔符的文件路径是保险的。
为了从文件路径中获取文件名,可以使用basename()函数。它接受一个完整的文件路径作为参数并返回文件的名称。
下面的例子演示了如何从文件路径中提取文件名index.php:
<?php
$path
=
'/wwww/include/index.php'
;
$filename
basename
(
);
echo
// index.php
要获得文件扩展名,可以使用pathinfo()函数,如下所示:
$fn
'./test.txt'
$ext
pathinfo
, PATHINFO_EXTENSION);
// txt
要获得文件的大小,可以使用filesize()函数。filesize函数将以字节为单位返回给定文件的大小,如果发生错误则返回false。
filesize
PHP提供了一些有用的函数来查询文件的时间属性。
上面的所有函数都返回一个UNIX时间戳,该时间戳是一个整数值,表示从1970-01-01 0点到给定日期时间之间的秒数。
要从UNIX时间戳获取日期和时间信息,可以使用getdate()函数。请看下面的例子:
// 获取最后一次修改时间
$ts
filemtime
// 获取日期
$ta
getdate
var_dump(
在对文件进行任何其他操作之前,首先需要线打开它。
要在PHP中打开文件,可以使用fopen()函数。该函数打开文件并返回一个文件句柄,该句柄是一个与文件关联的指针。通过文件句柄,您可以操作文件的内容。
fopen()函数有两个参数:
第一个参数是要打开的文件的名称第二个参数指定打开的模式,指明将如何使用文件,例如打开文件用于读或写。
下面的示例演示如何打开一个名为Test.txt的现有文件用于读取:
$fh
fopen
,
'r'
下表说明了可以传递给fopen()函数的模式值:
请注意,您可以将值b附加到mode参数,以指示该文件应被视为二进制文件。例如,rb模式表示以二进制的方式打开文件进行读取。
当脚本结束时,PHP会自动关闭所有打开的文件。但是,当你完成一个文件的操作,就关闭它都是一个很好的习惯。要关闭文件,需要将文件句柄传递给fclose()函数,如下所示:
fclose(
PHP提供了一些有用的函数供读取文件的内容:
下面的例子演示了如何将整个文件内容读取到一个字符串中:
"./test.txt"
"r"
$content
fread
));
或者更简单的:
file_get_contents
要将内容写入文件,可以使用以下函数之一:
下面的例子演示了如何使用fwrite()函数将字符串写入文件:
'w'
)
or
die
'无法打开文件'
fwrite(
'写入内容1'
' 写入内容2'
还可以使用file_put_contents()函数将字符串写入文件:
file_put_contents
'使用file_put_contents 示例'
为了检测文件的结尾,可以使用feof()函数。当文件指针到达文件末尾时,它返回true,否则返回false。
当您要读取不知道文件有多大的文件时,需要经常将feof()函数与fread()或fgetc()函数一起使用。
下面的例子演示了如何使用feof()函数。我们使用fread()函数一次读取10个字符。
''
while
(!
feof
)){
.=
,10);
}
原文链接:https://codingdict.com/