PHP file_put_contents 追加内容与换行

老虎说测试 脚本开发字数 603阅读2分0秒阅读模式
摘要今天在调试PHP代码的时候,遇到一个问题,我需要将每次生成的密码保存到一个文件中,做对比,因此需要通过PHP file_put_contents 函数来完成追加,由于密码是一个长度...

 

今天在调试PHP代码的时候,遇到一个问题,我需要将每次生成的密码保存到一个文件中,做对比,因此需要通过PHP file_put_contents 函数来完成追加,由于密码是一个长度为60的字符,因此还需要增加个换行便于查看。文章源自陈学虎-https://chenxuehu.com/article/2017/02/6126.html

$password = "123456";
$hash = password_hash($password,PASSWORD_DEFAULT);
file_put_contents('./1.txt',$hash.PHP_EOL,FILE_APPEND);

 文章源自陈学虎-https://chenxuehu.com/article/2017/02/6126.html

使用方法:文章源自陈学虎-https://chenxuehu.com/article/2017/02/6126.html

file_put_contents(file,data,mode,context)文章源自陈学虎-https://chenxuehu.com/article/2017/02/6126.html

 文章源自陈学虎-https://chenxuehu.com/article/2017/02/6126.html

 文章源自陈学虎-https://chenxuehu.com/article/2017/02/6126.html

先贴代码,在来说明,由于file_put_contents函数默认是重写文件,会覆盖掉原来的文件,因此我们需要追加,这里就使用了增加参数的方法:文章源自陈学虎-https://chenxuehu.com/article/2017/02/6126.html

 文章源自陈学虎-https://chenxuehu.com/article/2017/02/6126.html

FILE_APPEND文章源自陈学虎-https://chenxuehu.com/article/2017/02/6126.html

 文章源自陈学虎-https://chenxuehu.com/article/2017/02/6126.html

然后说明一点,关于换行的问题,学过程序的人都明白,不同的系统,采取的换行是不同的,例如:

 

在windows中\r\n是换行

在Mac中\r是换行

在Liunx中\n是换行

 

但是我们的大PHP是跨平台的,因此对于这种问题,也必然有自己的解决方案,来解决各个系统之间的兼容性。

 

PHP_EOL

 

就是这个常量,在字符后面连接上即可,所以最终就有了:

 

file_put_contents('./1.txt',$hash.PHP_EOL,FILE_APPEND);

 

完美解决问题:

 

 

 最后更新:2024-1-10
  • 版权声明:本文为原创文章,转载请附上原文出处链接及本声明。
  • 转载请注明:PHP file_put_contents 追加内容与换行 | https://chenxuehu.com/article/2017/02/6126.html