我们在做项目时,打开,读取,关闭文件是非常频繁的工作,基本上很多项目,应用,软件都会有这样的操作。
今天,我们都会学习到这些文件操作。
PHP - fopen():打开文件
readfile()可以打开文件,今天我们提供一个比readfile()更好的函数 - fopen。 此函数为您提供比 readfile() 函数更多的选项。
fopen() 函数打开文件或者 URL。如果打开失败,本函数返回 FALSE。
语法:
fopen(filename,mode,include_path,context)
mode 参数的可选的值
"r" 只读方式打开,将文件指针指向文件头。
"r+" 读写方式打开,将文件指针指向文件头。
"w" 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
"w+" 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
"a" 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
"a+" 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
"x" 创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。
"x+" 创建并以读写方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。
说明
fopen() 将 filename 指定的名字资源绑定到一个流上。如果 filename 是 "scheme://..." 的格式,则被当成一个 URL,PHP 将搜索协议处理器(也被称为封装协议)来处理此模式。如果该协议尚未注册封装协议,PHP 将发出一条消息来帮助检查脚本中潜在的问题并将 filename 当成一个普通的文件名继续执行下去。
如果 PHP 认为 filename 指定的是一个本地文件,将尝试在该文件上打开一个流。该文件必须是 PHP 可以访问的,因此需要确认文件访问权限允许该访问。如果激活了安全模式或者 open_basedir 则会应用进一步的限制。
如果 PHP 认为 filename 指定的是一个已注册的协议,而该协议被注册为一个网络 URL,PHP 将检查并确认 allow_url_fopen 已被激活。如果关闭了,PHP 将发出一个警告,而 fopen 的调用则失败。
示例:打开test.txt文件,并读取内容。
$testfile = fopen("text.txt", "r") or die("文件无法打开!"); //打开文件
echo fread($testfile,filesize("text.txt")); //读取文件内容
fclose($testfile ); //关闭文件
结果:
PHP fopen()PHP 读取文件 - fread():fread()函数读取打开的文件,的第一个参数包含待读取文件的文件名,第二个参数规定待读取的最大字节数。
语法:
fread(file,length)
还是以test.txt文件为例子
echo fread($testfile,filesize("test.txt"));
PHP 关闭文件 - fclose():用完文件后把它们全部关闭是一个良好的编程习惯,因为这样会减少服务器资源。
$testfile = fopen("test.txt", "r");
fclose($testfile ); //关闭文件
PHP 读取单行文件 - fgets():fgets() 函数用于从文件读取单行
结果:
PHP fgets
PHP 检查 end-of-file - feof():feof() 函数检查是否已到达 "end-of-file" (EOF)。
feof() 对于遍历未知长度的数据很有用。
结果:
PHP feof()PHP 读取单字符 - fgetc(): fgetc() 函数用于从文件中读取单个字符。
示例:
PHP fgetc下一节:PHP 文件创建/写入,用途:项目中上传文件
堂弟程序员一枚,不修边幅。
前日相亲一女子,据说是研究易经的。
我问堂弟相亲结果如何?
堂弟说:“对方说我五行缺了四,与她命格不配”。
我好奇极了又问“说你缺了哪四行?”
“她说我缺了,金,木,水,火”!
作者:林路同,转载请注明来源,谢谢。
公众号:林路同
林中多歧路,殊途同归。互联网资讯,名人传记,搞笑段子,笑话故事,社会热点,创业故事,技术分享,如果您觉得不错就关注下树洞吧,树洞会再接再厉的哈。
网友评论