今天在调试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);
完美解决问题:
评论