• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    PHP创建文件及写入数据(覆盖写入,追加写入)的方法详解

    本文实例讲述了PHP创建文件及写入数据(覆盖写入,追加写入)的方法。分享给大家供大家参考,具体如下:

    这里主要介绍了PHP创建文件,并向文件中写入数据,覆盖,追加的实现代码,需要的朋友可以参考下:

    创建文件我们用到函数

    fopen ( string filename, string mode )
    
    

    参数:

    filename:创建文件名

    mode:以什么方式打开文件filename

    其中mode可能值列表:

    mode 说明
    ‘r' 只读方式打开,将文件指针指向文件头。
    ‘r+' 读写方式打开,将文件指针指向文件头。
    ‘w' 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
    ‘w+' 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
    ‘a' 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
    ‘a+' 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
    ‘x' 创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。这和给 底层的 open(2) 系统调用指定 O_EXCL|O_CREAT 标记是等价的。此选项被 PHP 4.3.2 以及以后的版本所支持,仅能用于本地文件。
    ‘x+' 创建并以读写方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。这和给 底层的 open(2) 系统调用指定 O_EXCL|O_CREAT 标记是等价的。此选项被 PHP 4.3.2 以及以后的版本所支持,仅能用于本地文件。

    下面代码是我通过利用函数fopen创建一个名为Demo,格式为txt的文件,并在文件中写入"Welcome To ItCodeWorld!"的数据。

    ?php
    //要创建的两个文件
    $TxtFileName = "Demo.txt";
    //以读写方式打写指定文件,如果文件不存则创建
    if( ($TxtRes=fopen ($TxtFileName,"w+")) === FALSE){
    echo("创建可写文件:".$TxtFileName."失败");
    exit();
    }
    echo ("创建可写文件".$TxtFileName."成功!/br>");
    $StrConents = "Welcome To ItCodeWorld!";//要 写进文件的内容
    if(!fwrite ($TxtRes,$StrConents)){ //将信息写入文件
    echo ("尝试向文件".$TxtFileName."写入".$StrConents."失败!");
    fclose($TxtRes);
    exit();
    }
    echo ("尝试向文件".$TxtFileName."写入".$StrConents."成功!");
    fclose ($TxtRes); //关闭指针
    ?>
    
    

    PHP 创建文件 – fopen()

    fopen() 函数也用于创建文件。也许有点混乱,但是在 PHP 中,创建文件所用的函数与打开文件的相同。

    如果您用 fopen() 打开并不存在的文件,此函数会创建文件,假定文件被打开为写入(w)或增加(a)。

    下面的例子创建名为 "testfile.txt" 的新文件。此文件将被创建于 PHP 代码所在的相同目录中:

    实例

    $myfile = fopen("testfile.txt", "w")
    
    

    PHP 文件权限

    如果您试图运行这段代码时发生错误,请检查您是否有向硬盘写入信息的 PHP 文件访问权限。

    PHP 写入文件 – fwrite()

    fwrite() 函数用于写入文件。

    fwrite() 的第一个参数包含要写入的文件的文件名,第二个参数是被写的字符串。

    下面的例子把姓名写入名为 "newfile.txt" 的新文件中:

    实例

    ?php
    $myfile = fopen("newfile.txt", "w") or die("Unable to open file!");
    $txt = "Bill Gates\n";
    fwrite($myfile, $txt);
    $txt = "Steve Jobs\n";
    fwrite($myfile, $txt);
    fclose($myfile);
    ?>
    
    

    请注意,我们向文件 "newfile.txt" 写了两次。在每次我们向文件写入时,在我们发送的字符串 $txt 中,第一次包含 "Bill Gates",第二次包含 "Steve Jobs"。在写入完成后,我们使用 fclose() 函数来关闭文件。

    如果我们打开 "newfile.txt" 文件,它应该是这样的:

    Bill Gates
    Steve Jobs

    PHP 覆盖(Overwriting)

    如果现在 "newfile.txt" 包含了一些数据,我们可以展示在写入已有文件时发生的的事情。所有已存在的数据会被擦除并以一个新文件开始。

    在下面的例子中,我们打开一个已存在的文件 "newfile.txt",并向其中写入了一些新数据:

    实例

    ?php
    $myfile = fopen("newfile.txt", "w") or die("Unable to open file!");
    $txt = "Mickey Mouse\n";
    fwrite($myfile, $txt);
    $txt = "Minnie Mouse\n";
    fwrite($myfile, $txt);
    fclose($myfile);
    ?>
    
    

    如果现在我们打开这个 “newfile.txt” 文件,Bill 和 Steve 都已消失,只剩下我们刚写入的数据:

    Mickey Mouse
    Minnie Mouse

    换行符‘\n'和回车符‘\r'

    顾名思义,换行符就是另起一行,回车符就是回到一行的开头,所以我们平时编写文件的回车符应该确切来说叫做回车换行符

    ‘\n' 10 换行(newline)
    ‘\r' 13 回车(return)

    也可以表示为'\x0a'和'\x0d'.(16进制)

    在windows系统下,回车换行符号是”\r\n”.但是在Linux等系统下是没有”\r”符号的。

    在解析文本或其他格式的文件内容时,常常要碰到判定回车换行的地方,这个时候就要注意既要判定”\r\n”又要判定”\n”。

    写程序时可能得到一行,将其进行trim掉'\r',这样能得到你所需要的string了。

    PHP file_put_contents() 函数

    PHP file_put_contents() 函数是一次性向文件写入字符串或追加字符串内容的最合适选择。

    file_put_contents() 函数用于把字符串写入文件,成功返回写入到文件内数据的字节数,失败则返回 FALSE。

    语法:

    int file_put_contents ( string filename, string data [, int flags [, resource context]] )
    
    

    参数说明:

    参数 说明
    filename 要写入数据的文件名
    data 要写入的数据。类型可以是 string,array(但不能为多维数组),或者是 stream 资源
    flags 可选,规定如何打开/写入文件。可能的值:
    1. FILE_USE_INCLUDE_PATH:检查 filename 副本的内置路径
    2. FILE_APPEND:在文件末尾以追加的方式写入数据
    3. LOCK_EX:对文件上锁
    context 可选,Context是一组选项,可以通过它修改文本属性

    例子:

    ?php
    echo file_put_contents("test.txt", "This is something.");
    ?>
    
    

    运行该例子,浏览器输出:

    18

    而 test.txt 文件(与程序同目录下)内容则为:This is something.。

    提示

    如果文件不存在,则创建文件,相当于fopen()函数行为。
    如果文件存在,默认将清空文件内的内容,可设置 flags 参数值为 FILE_APPEND 以避免(见下)。
    本函数可安全用于二进制对象。

    以追加形式写入内容

    当设置 flags 参数值为 FILE_APPEND 时,表示在已有文件内容后面追加内容的方式写入新数据:

    ?php
    file_put_contents("test.txt", "This is another something.", FILE_APPEND);
    ?>
    
    

    执行程序后,test.txt 文件内容变为:

    This is something.This is another something.

    file_put_contents() 的行为实际上等于依次调用 fopen()fwrite() 以及 fclose() 功能一样。

    更多关于PHP相关内容感兴趣的读者可查看本站专题:《php文件操作总结》、《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

    希望本文所述对大家PHP程序设计有所帮助。

    您可能感兴趣的文章:
    • php逐行读取txt文件写入数组的方法
    • 解析PHP中如何将数组变量写入文件
    • php fputcsv命令 写csv文件遇到的小问题(多维数组连接符)
    • php文件操作之文件写入字符串、数组的方法分析
    • PHP使用内置函数file_put_contents写入文件及追加内容的方法
    • PHP创建文件,并向文件中写入数据,覆盖,追加的实现代码
    • php实现读取和写入tab分割的文件
    • php对csv文件的读取,写入,输出下载操作详解
    • PHP如何将log信息写入服务器中的log文件
    • php实现将数组或对象写入到文件的方法小结【三种方法】
    上一篇:PHP fopen函数用法实例讲解
    下一篇:PHP XML Expat解析器知识点总结
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    PHP创建文件及写入数据(覆盖写入,追加写入)的方法详解 PHP,创建,文件,及,写入,数据,