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;
}
}
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调试函数和日志记录函数分享
网站程序开发过程经常需要调试,发布阶段也需要记录运行日志,方便发现问题和还原事件.这就要求有调试和日志记录功能. 下面分别写了用于调试的函数和用于记录错误的函数. 使用方法很简单,且自动根据日期生成日志文件: 复制代码 代码如下: //调试时,多个参数都可以: sysdebug("hello"); sysdebug("hello", "tiger is coming now"); //错误记录也一样: syserror("error&q
-
记录PHP错误日志 display_errors与log_errors的区别
display_errors 错误回显,一般常用语开发模式,但是很多应用在正式环境中也忘记了关闭此选项.错误回显可以暴露出非常多的敏感信息,为攻击者下一步攻击提供便利.推荐关闭此选项. display_errors = On 开启状态下,若出现错误,则报错,出现错误提示 dispaly_errors = Off 关闭状态下,若出现错误,则提示:服务器错误.但是不会出现错误提示 log_errors 在正式环境下用这个就行了,把错误信息记录在日志里.正好可以关闭错误回显. 对于PHP开发人员来说,
-
php性能分析之php-fpm慢执行日志slow log用法浅析
本文实例讲述了php性能分析之php-fpm慢执行日志slow log用法.分享给大家供大家参考,具体如下: 众所周知,mysql有slow query log,根据慢查询日志,我们可以知道那些sql语句有性能问题.作为mysql的好搭档,php也有这样的功能.如果你使用php-fpm来管理php的话,你可以通过如下选项开启. PHP 5.3.3 之前设置如下: <value name="request_slowlog_timeout">5s</value> &
-
解析php如何将日志写进syslog
在做项目的时候们为了方便运维,我们经常需要将系统日志写入系统syslog,下边我们就介绍一下,在linux下php对syslog的操作:在linux中配置syslog在linux中,facility(设备)有以下几种:AUTH 普通安全/授权消息AUTHPRIV 私有安全/授权消息CRON 定时器进程DAEMON 守护进程KERN 内核消息LOCAL0 ... LOCAL7 本地应用,在windows上不支持LPR 行式打印机MAIL 邮件服务NEWS 新闻服务SYSLOG 由sysl
-
php记录日志的实现代码
复制代码 代码如下: $ss_log_level = 0; $ss_log_filename = /tmp/ss-log; $ss_log_levels = array( NONE => 0, ERROR => 1, INFO => 2, DEBUG => 3 ); //设置日志级别 function ss_log_set_level ($level = ERROR) { global $ss_log_level; $ss_log_level = $level; } //记录日志
-
PHP写日志的实现方法
本文实例讲述了PHP写日志的实现方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: function logError($content) { $logfile = '/logs/debuglog'.date('Ymd').'.txt'; if(!file_exists(dirname($logfile))) { @File_Util::mkdirr(dirname($logfile)); } error_log(date("[Y-m-
-
php利用单例模式实现日志处理类库
对于现在的应用程序来说,日志的重要性是不言而喻的.很难想象没有任何日志记录功能的应用程序运行在生产环境中.日志所能提供的功能是多种多样的,包括记录程序运行时产生的错误信息.状态信息.调试信息和执行时间信息等.在生产环境中,日志是查找问题来源的重要依据.应用程序运行时的产生的各种信息,都应该通过日志类库来进行记录. 复制代码 代码如下: /** * 日志处理类 * * @since alpha 0.0.1 * @date 2014.03.04 * @author genialx * */ cl
-
php基于自定义函数记录log日志方法
本文实例讲述了php基于自定义函数记录log日志方法.分享给大家供大家参考,具体如下: /** * 记录错误日志 * @param 日志内容 $res */ function save_log($res) { $err_date = date("Ym", time()); //$address = '/var/log/error'; $address = './error'; if (!is_dir($address)) { mkdir($address, 0700, true); }
-
php实现的简单日志写入函数
本文实例讲述了php实现的简单日志写入函数.分享给大家供大家参考.具体实现方法如下: function log( $logthis ){ file_put_contents('logfile.log', date("Y-m-d H:i:s"). " " . $logthis. "\r\n", FILE_APPEND | LOCK_EX); } // use \r\n for new line on windows, just \n on linu
-
php错误日志简单配置方法
本文实例讲述了php配置错误日志的方法.分享给大家供大家参考,具体如下: php.ini: ; 错误日志 log_errors = On ; 显示错误 display_errors = Off ; 日志路径 error_log = "/usr/local/lnmp/php/var/log/error_log" ; 错误等级 error_reporting = E_ALL&~E_NOTICE php-fpm.conf: [global] ; php-fpm pid文件 pid =
-
php实现的debug log日志操作类实例
本文实例讲述了php实现的debug log日志操作类.分享给大家供大家参考,具体如下: <?php class Tool { public static function log($info) { $time = date('m-d H:i:s'); $backtrace = debug_backtrace(); $backtrace_line = array_shift($backtrace); // 哪一行调用的log方法 $backtrace_call = array_shift($ba
随机推荐
- AS3.0 实例学习 熟悉addChild和removeChild在不同的swf之间的运用,以及loader的用法
- 详解Java项目中读取properties文件
- Oracle 查询表信息获取表字段及字段注释
- 数据库开发总结(ADO.NET小结)
- ASP.NET MVC3网站创建与发布(1)
- 小菜编程成长记(一 面试受挫——代码无错就是好?)第1/3页
- Javascript将string类型转换int类型
- 用php将任何格式视频转为flv的代码
- 深入研究jQuery图片懒加载 lazyload.js使用方法
- Ruby中任务构建工具rake的入门学习教程
- 用vbscript实现从后到前阅读一个文本文件
- 介绍Python中的一些高级编程技巧
- 简单了解WordPress开发中update_option()函数的用法
- dwr spring的集成实现代码
- 服务器安全设置之-本地安全策略设置
- VC多线程编程详解
- 关于Spring总结(必看篇)
- PHP+ajax分页实例简析
- 浅谈Qt中使用CEF的几个要点(Windows下)
- Hibernate一级缓存和二级缓存详解