php面试基础知识--文件系统函数
2019-05-22 本文已影响0人
沙蒿同学
- fopen( string
mode) : resource
打开文件或者 URL,将 filename 指定的名字资源绑定到一个流上。
如果$filename指定的是本地的文件,就会在该文件上打开一个流,要确保该文件php有访问的权限。(权限问题,本地行,服务器不行系列)成功时返回文件指针资源,如果打开失败,本函数返回 FALSE。如果打开失败,会产生一个 E_WARNING
错误。可以通过 @ 来屏蔽错误
<?php
$handle = fopen("c:\\folder\\resource.txt", "wb");
?>
- fgets ( resource
length ] ) : string
从文件指针中读取一行,长度为length为1024,如果文件中的大多数行都大于 8KB,则在脚本中指定最大行的长度在利用资源上更为有效。
<?php
$handle = @fopen("/tmp/inputfile.txt", "r");
if ($handle) {
while (($buffer = fgets($handle, 4096)) !== false) {
echo $buffer;
}
if (!feof($handle)) {
echo "Error: unexpected fgets() fail\n";
}
fclose($handle);
}
?>
- feof ( resource $handle ) : bool
测试文件指针是否到了文件结束的位。如果文件指针到了 EOF 或者出错时则返回 TRUE,否则返回一个错误(包括 socket 超时),其它情况则返回 FALSE。
- fread ( resource
length ) : string
读取文件(可安全用于二进制文件),当读取了 length 个字节和到达了文件末尾(EOF)时停止读取文件。
注意:
1、如果只是想将一个文件的内容读入到一个字符串中,用 file_get_contents(),它的性能比上面的代码好得多。
2、fread()从文件指针的当前位置读取。使用ftell()查找指针的当前位置,使用rewind()返回指针位置。
- fclose ( resource $handle ) : bool
关闭一个已打开的文件指针。有始有终,开启了咱就一定要关闭。
<?php
$handle = fopen('somefile.txt', 'r');
fclose($handle);
?>