PHP 写文本日志实现代码


Posted in PHP onMay 18, 2010
** 
* 写文件 
* @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 相关文章推荐
一个用于MySQL的PHP XML类
Oct 09 PHP
Discuz 5.0 中读取纯真IP数据库函数分析
Mar 16 PHP
php中3种方法统计字符串中每种字符的个数并排序
Aug 27 PHP
ThinkPHP字符串函数及常用函数汇总
Jul 18 PHP
php数组保存文本与文本反编成数组实例
Nov 13 PHP
thinkphp区间查询、统计查询与SQL直接查询实例分析
Nov 24 PHP
详解PHP对数组的定义以及数组的创建方法
Nov 27 PHP
2017年最新PHP经典面试题目汇总(上篇)
Mar 17 PHP
Yii2设置默认控制器的两种方法
May 19 PHP
PHP实现微信模拟登陆并给用户发送消息的方法【文字,图片,图文】
Jun 29 PHP
PHP使用星号替代用户名手机和邮箱的实现代码
Feb 07 PHP
Laravel框架Eloquent ORM修改数据操作示例
Dec 03 PHP
php 随机记录mysql rand()造成CPU 100%的解决办法
May 18 #PHP
PHP array_flip() 删除重复数组元素专用函数
May 16 #PHP
mysql下创建字段并设置主键的php代码
May 16 #PHP
php带密码功能并下载远程文件保存本地指定目录 修改加强版
May 16 #PHP
ezSQL PHP数据库操作类库
May 16 #PHP
php 提速工具eAccelerator 配置参数详解
May 16 #PHP
php date()日期时间函数详解
May 16 #PHP
You might like
Dedecms V3.1 生成HTML速度的优化办法
2007/03/18 PHP
学习使用curl采集curl使用方法
2012/01/11 PHP
hadoop中一些常用的命令介绍
2013/06/19 PHP
php发送get、post请求的6种方法简明总结
2014/07/08 PHP
PHP错误Allowed memory size of 67108864 bytes exhausted的3种解决办法
2014/07/28 PHP
PHP中把对象转换为关联数组代码分享
2015/04/09 PHP
一个简单的php路由类
2016/05/29 PHP
php微信扫码支付 php公众号支付
2019/03/24 PHP
对象的类型:本地对象(1)
2006/12/29 Javascript
jQuery live
2009/05/15 Javascript
ExtJs使用IFrame的实现代码
2010/03/24 Javascript
模拟用户点击弹出新页面不会被浏览器拦截
2014/04/08 Javascript
深入了解JavaScript中的Symbol的使用方法
2015/07/28 Javascript
Spring mvc 接收json对象
2015/12/10 Javascript
详解Vue用axios发送post请求自动set cookie
2017/05/10 Javascript
js实现微信/QQ直接跳转到支付宝APP打开口令领红包功能
2018/01/09 Javascript
对vue v-if v-else-if v-else 的简单使用详解
2018/09/29 Javascript
vue+django实现一对一聊天功能的实例代码
2019/07/17 Javascript
解决vue-cli@3.xx安装不成功的问题及搭建ts-vue项目
2020/02/09 Javascript
nodejs各种姿势断点调试的方法
2020/06/18 NodeJs
Vue-router中hash模式与history模式的区别详解
2020/12/15 Vue.js
零基础写python爬虫之urllib2使用指南
2014/11/05 Python
深入理解Python分布式爬虫原理
2017/11/23 Python
使用Python的turtle模块画国旗
2019/09/24 Python
Python 内置函数globals()和locals()对比详解
2019/12/23 Python
Pandas时间序列:时期(period)及其算术运算详解
2020/02/25 Python
python实现猜拳游戏
2020/03/04 Python
django为Form生成的label标签添加class方式
2020/05/20 Python
Python 列表反转显示的四种方法
2020/11/16 Python
精彩的大学生自我评价
2013/11/17 职场文书
应用数学专业求职信
2014/03/14 职场文书
入股协议书范本
2014/04/14 职场文书
五心教育心得体会
2014/09/04 职场文书
秋季运动会开幕词
2015/01/28 职场文书
关爱留守儿童主题班会
2015/08/13 职场文书
MySQL不使用order by实现排名的三种思路总结
2021/06/02 MySQL