很多站长朋友们都不太清楚php中mylog文件,今天小编就来给大家整理php中mylog文件,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 PHP正则怎么解析log文件 2、 php打log共有几种方式 3、 thinkphp日志记录文件被存在了什么地方 4、 怎样用php读取mysql.log的内容 5、 为什么PHP网站里没有log日志文件夹 6、 php怎么把字符串写入log文件 PHP正则怎么解析log文件<?php$file = fopen("zmxc.access_20120516.log","r");set_time_limit(0);$link = mysql_connect(*) or die('222');//自己的数据库信息mysql_select_db('test',$link) or die('111');mysql_query ('set names utf8');$i =0;while($count = fgets($file)){ $array = explode(' HTTP/1.1 ',$count); $string = $array[0]; $que=substr($array[1],0,3); if($que == '200'){ $i++ ; $arr = explode(' +0800] ',$string); $ips = explode(' - - [',$arr[0]); $t2 =substr(strstr($ips[1],':'),1); $t1 = explode(':',$ips[1]); $times = $t1[0].' '.$t2; $time=strtotime(strtr($times,'/',' ')); $ip = $ips[0]; $src = $arr[1]; if(strstr($src,'id=')){ $ids = explode('id=',$src); $id =$ids[1]; } mysql_query("INSERT INTO `logs_16` (`t_id`,`src`,`ip`,`intip`,`time`) VALUES ('$id','$src','$ip', inet_aton('$ip'),'$time')"); unset($id); }}echo $i;fclose($fp); ?>
php打log共有几种方式不明白你说的方式怎么划分,如果单纯以函数输出就算的话,应该有很多种方法,比如
echo
sprintf
print_r
var_dump
die
还有很多就不一一列举了。
如果是吧log输出到外部文件的话可以用:
error_log
file_put_contents
thinkphp日志记录文件被存在了什么地方日志记录\ThinkPHP\Lib\Think\Core\Log.class.php
1、可以在config.php中进行设置,默认为关闭状态。 'APP_DEBUG' => true
打开\ThinkPHP\Common\debug.php文件可以查看debug的默认设置如下:
return array(
'LOG_RECORD'=>true, // 进行日志记录
'LOG_RECORD_LEVEL' => array('EMERG','ALERT','CRIT','ERR','WARN','NOTIC','INFO','DEBUG','SQL'), // 允许记录的日志级别
'DB_FIELDS_CACHE'=> false, //数据库字段缓存
'SHOW_RUN_TIME'=>true, // 运行时间显示
'SHOW_ADV_TIME'=>true, // 显示详细的运行时间
'SHOW_DB_TIMES'=>true, // 显示数据库查询和写入次数
'SHOW_CACHE_TIMES'=>true, // 显示缓存操作次数
'SHOW_USE_MEM'=>true, // 显示内存开销
'SHOW_PAGE_TRACE'=>true, // 显示页面Trace信息 由Trace文件定义和Action操作赋值
'APP_FILE_CASE' => true, // 是否检查文件的大小写 对Windows平台有效
);
注意事项:DB_FIELDS_CACHE数据库字段缓存默认关闭状态,如果开启的话,会在Runtime\Data文件夹下生成文件缓存,并且修改表之后,如新加了字段,这个缓存无法记录你的操作,需要我们手动删除一次,对表的修改才会成功。
将'APP_DEBUG' => true后,访问页面会出现如下图的DEBUG提示:
如果只想显示一部分提示信息,如运行时间,内存开销等,
可以在config.php中进行相应的设置即可,如:
//'APP_DEBUG' => true, // 调试模式开关
'SHOW_RUN_TIME' => true, //运行时间显示
'SHOW_ADV_TIME' => true, //显示详细的运行时间
'SHOW_DB_TIMES' => true, //显示数据库的操作次数
'SHOW_CACHE_TIMES'=>true, //显示缓存操作次数
'SHOW_USE_MEM' => true, //显示内存开销
提示信息如下图:
2、页面Trace信息的自定义:\ThinkPHP\Tpl\PageTrace.tpl.php
自定义的方法一:在config.php的同级目录加上一个trace.php文件
<?php
return array{
'当前的server信息'=>$_SERVER['REMOTE_ADDR'],
};
?>
自定义的方法二:在Action方法中添加
$this->trace('我很丑,但是我很温柔','5211314');
3、输出调试法:
halt('aaaaaaa');//输出aaaaaa并且中断程序执行
4、模型调试:显示SQL语句
$User=new Model('User');
$User->find(1);
echo $User->getLastSql();//输出最后执行的一条SQL语句
5、日志记录\ThinkPHP\Lib\Think\Core\Log.class.php
config.php中设置
'LOG_RECORD'=>true,//开启了日志记录
'LOG_RECORD_LEVEL'=>array('EMERG','ALERT'
怎样用php读取mysql.log的内容$content=file_get_contents('mysql.log');
var_dump($content);
这样就能显示content内容。
为什么PHP网站里没有log日志文件夹网站的log日志文件夹一般的存在与服务器中的,而不是直接存储于网站的根目录下的
至少目前我还没见到过有存在与网站根目录下的日志文件
您可以在服务器里面找找,如果没有的话,要么就是日志功能没有开启,要么就提交一下工单问一下客服看看
php怎么把字符串写入log文件<?php
//log日志文件
$txt = './log.txt';
//要写入的内容
$addLogStr = date('Y-m-d H:i:s')."操作了xxx成功OR失败!\r\n";
//打开资源并将光标设置为末尾
$fp = fopen($txt,"a+");
//写入内容
fwrite($fp,$addLogStr);
//关闭资源
fclose($fp);
关于php中mylog文件的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php中mylog文件 php syslog的详细内容...