php写log日志

:2018-12-15    :407 次   :2089 字   

摘要:


利用php写入txt的功能来写日志,记录服务器或者网站的操作记录,方便查询和纠正发生未知的错误。文章主要写了php的txt写入和读取功能。两种读取方法。


代码:




<?php
header("Content-type: text/html; charset=utf-8");
/********************
1、写入内容到文件,追加内容到文件
2、打开并读取文件内容
********************/
 $file  = 'log.txt';//要写入文件的文件名(可以是任意文件名),如果文件不存在,将会创建一个
 $content = "第一次写入的内容\n";
 
 if($f  = file_put_contents($file, $content,FILE_APPEND)){// 这个函数支持版本(PHP 5) 
  echo "写入成功。<br />";
 }
 $content = "第二次写入的内容";
 if($f  = file_put_contents($file, $content,FILE_APPEND)){// 这个函数支持版本(PHP 5)
     echo "写入成功。<br />";
 }
 if($data = file_get_contents($file)){; // 这个函数支持版本(PHP 4 >= 4.3.0, PHP 5) 
  echo "写入文件的内容是:$data";
 }
?>



注意:log.txt 这个文件web服务器用户一定要有读写权限(nginx下是nginx用户,apache下默认用户是daemon),一般需要把这个文件设置为777属性。


php file_put_contents  //追加数据


int file_put_contents( string filename, string data [, int flags [, resource context]] ) //和依次调用 fopen(),fwrite() 以及 fclose() 功能一样。


filename 要被写入数据的文件名。


data 要写入的数据。类型可以是 string,array (但不能为多维数组)或者是 stream 资源。


flags flags 可以是 FILE_USE_INCLUDE_PATH,FILE_APPEND 和/或 LOCK_EX(获得一个独占锁定),使用FILE_USE_INCLUDE_PATH 时要特别谨慎。 

  
context 一个 context 资源。


该函数将返回写入到文件内数据的字节数


file_put_contents("rote.txt","cc ",FILE_APPEND);


‍第三个参数实现将内容追加到文件的后面,如果没有这个参数会直接覆盖以前的数据。



源文件格式读取txt


<?php
$file = 'rand.txt'; //先读取文件

$cbody = file($file); //file()函数作用是返回一行数组,txt里有三行数据,因此一行被识别为一个数组,三行被识别为三个数组
for($i=0;$i<count($cbody);$i++){ //count函数就是获取数组的长度的,长度为3 因为一行被识别为一个数组 有三行

echo $cbody[$i];echo "<br/>"; //最后是循环输出每个数组,在每个数组输出完毕后 ,输出一个换行,这样就可以达到换行效果
}
?>



    暂无评论,快来抢沙发吧!
×