PHP 写文本日志实现代码

时间:2022-09-22 11:59:44

代码如下:


** 
* 写文件 
* @param string $file 文件路径 
* @param string $str 写入内容 
* @param char $mode 写入模式 
*/ 
function writeFile($file,$str,$mode='w') 

$oldmask = @umask(0); 
$fp = @fopen($file,$mode); 
@flock($fp, 3); 
if(!$fp) 

Return false; 

else 

@fwrite($fp,$str); 
@fclose($fp); 
@umask($oldmask); 
Return true; 


扩展应用,比如记录每次请求的url内容 

复制代码代码如下:


function writeGetUrlInfo() 

  //获取请求方的地址,客户端,请求的页面及参数 
   $requestInformation = $_SERVER['REMOTE_ADDR'].', '.$_SERVER['HTTP_USER_AGENT'].', http://'.$_SERVER['HTTP_HOST'].htmlentities        ($_SERVER['PHP_SELF']).'?'.$_SERVER['QUERY_STRING']."\n"; 
  $fileName = RootPath.'/log/'.date('Y-m-d').'.log'; //网站根目录RootPath是在配置文件里define('RootPath', substr(dirname(__FILE__))); 
  writeFile($fileName, $requestInformation, 'a'); //表示追加 



用file_put_contents($filename,$data,FILE_APPEND);更佳