php文件操作之文件写入字符串、数组的方法分析

yipeiwu_com6年前PHP代码库

本文实例讲述了php文件操作之文件写入字符串、数组的方法。分享给大家供大家参考,具体如下:

  • 场景一:用文本文档记录一些操作日志,因为对于一些频繁的操作,操作记录的数据量势必会很大,如果用数据库来存储会给数据库带来压力。
  • 场景二:代替输出函数打印一些数据,例如在支付的回调里面不好用echo、var_dump等直观地打印数据出来,就要用到写入文件来记录数据的方式,可以用于排除错误等。

记录当前时间,写入文件:

使用file_put_contents()函数(写入字符串)

<?php
  $log = "./log.txt"; //文件路径,Linux下需要设置可写权限
  $text = date('Y-m-d H:i:s')."\r\n"; //记录当前时间
  file_put_contents($log,$text,FILE_APPEND); //追加写入,去掉FILE_APPEND清除文件内容后写入

依次调用fopen()fwrite()fclose()函数(写入字符串)

<?php
  $fp = fopen("./log.txt","a+");//打开文件,准备追加写入,w+为清除写入
  fwrite($fp, date('Y-m-d H:i:s')."\r\n");//写入文件
  fclose($fp);//关闭文件

*写入数组:

<?php
  $arr = array('0'=>'lws');
  $fp = fopen('./log.txt','a+');
  fwrite($fp,var_export($arr,true));
  fclose($fp);

( 如果报以下错,说明php.ini的时区没有设置好,找到'date.timezone'一行,设置 date.timezone = PRC

Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone.

另外,以上两种文件写入的方式,如果文件不存在都会自动创建该文件,可以省去使用file_exists()函数判断文件是否存在。)

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP目录操作技巧汇总》、《php文件操作总结》、《PHP常用遍历算法与技巧总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》及《php常见数据库操作技巧汇总

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

相关文章

利用客户端缓存对网站进行优化的原理分析第1/2页

很多人首先会想从服务器缓存方面着手对程序进行优化,许多不同的服务器缓存方式都有他们自己的特点,像我曾经参与的一些项目中,根据缓存的命中率不同使用过 Com+/Enterprise Lib...

php.ini save_handler 修改不生效的解决办法

php5.3.3以前php-fpm还没有被php收录,配置php基本都在php.ini里面,php5.3.3及以后,除了在php.ini配置以外,还可以在php-fpm.conf里面配置...

PHP全局变量与超级全局变量区别分析

本文分析了PHP全局变量与超级全局变量区别。分享给大家供大家参考,具体如下: 全局变量就是在函数外面定义的变量。不能在函数中直接使用。因为它的作用域不会到函数内部。所以在函数内部使用的时...

asp.net和php的区别点总结

asp.net和php哪个更好? 在.net之前,微软的是ASP。在微软的大力推广下,其看起来还是很有前途的。但现在,微软想推广asp.net,而ASP成了其障碍。所以从Windows...

php无限级分类实现方法分析

本文实例讲述了php无限级分类实现方法。分享给大家供大家参考,具体如下: 1. 递归 public function getInfo(){ $data=$this->selec...