PHP 写文本日志实现代码

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

**
* 写文件
* @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);更佳

相关文章

PHP中session跨子域的三种实现方法

PHP中session跨子域的三种实现方法

在之前做东西的时候session一般就直接存在数据库中这样就能解决跨域不仅仅是跨子域,但是今天遇到这个问题是,自己要在别人现有的东西上面做修改。由于仅仅是子域当时就想肯定有简单的解决方法...

php输入流php://input使用浅析

在做一个摄像头拍照然后上传的功能,php中使用php://input来获取内容。于是就了解了下php://input。 从官网信息来看,php://input是一个只读信息流,当请求方式...

phpmyadmin配置文件现在需要绝密的短密码(blowfish_secret)的2种解决方法

解决办法有两种:(建议用第二种) 1、配置phpmyadmin下的config.inc.php  将cookie改为http复制代码 代码如下:vi /usr/share/ph...

浅谈php提交form表单

处理GET请求 实现的功能是输入姓名后页面显示“Hello XXX” 创建html文件hello.html: <!DOCTYPE html> <html>...

php判断数组中是否存在指定键(key)的方法

本文实例讲述了php判断数组中是否存在指定键(key)的方法。分享给大家供大家参考。具体分析如下: php中有两个函数用来判断数组中是否包含指定的键,分别是array_key_exist...