THINKPHP项目开发中的日志记录实例分析
发布时间:2020-12-13 02:13:39 所属栏目:PHP教程 来源:网络整理
导读:《:THINKPHP项目开发中的日志记录实例分析》要点: 本文介绍了:THINKPHP项目开发中的日志记录实例分析,希望对您有用。如果有疑问,可以联系我们。 PHP实战 本篇章节讲解THINKPHP项目开发中的日志记录用法.供大家参考研究.具体办法如下: PHP实战
《:THINKPHP项目开发中的日志记录实例分析》要点: PHP实战本篇章节讲解THINKPHP项目开发中的日志记录用法.分享给大家供大家参考.具体办法如下: PHP实战1、建立日志表
代码如下:
CREATE TABLE `logs` (?
? `id` int(11) NOT NULL auto_increment,? ? `guid` varchar(100) character set utf8 NOT NULL,? ? `addtime` timestamp NOT NULL default CURRENT_TIMESTAMP,? ? `account` varchar(100) character set utf8 NOT NULL,? ? `nickname` varchar(100) character set utf8 NOT NULL,? ? `app` varchar(100) character set utf8 NOT NULL,? ? `action` varchar(100) character set utf8 NOT NULL,? ? `method` varchar(100) character set utf8 NOT NULL,? ? `query_string` text character set utf8 NOT NULL,? ? `is_desc` varchar(100) character set utf8 NOT NULL,? ? `desc` varchar(100) character set utf8 NOT NULL,? ? `ipaddr` varchar(100) character set utf8 NOT NULL,? ? `unique_flag` varchar(100) character set utf8 NOT NULL,? ? PRIMARY KEY? (`id`)? ) ENGINE=InnoDB? DEFAULT CHARSET=utf8 ; 2、Common/common.php里面进行办法的定义:
代码如下:
function getGlobalSkypeLogDbConfig() {?
?$global_skype_db_config = array(? ???? 'dbms'????????? => C('DB_TYPE'),? ???? 'username' => C('DB_USER'),? ???? 'password' => C('DB_PWD'),? ???? 'hostname' => C('DB_HOST'),? ???? 'database'?? => C('DB_NAME'),? ?);? ?return $global_skype_db_config;? }? ? function addOperationLog($desc=NULL,$unique_flag='system',$app=APP_NAME,$action=MODULE_NAME,$method=ACTION_NAME) {? ?$global_skype_db_config = getGlobalSkypeLogDbConfig();? ?static $global_skype_log_db_conn;? ?if (!$global_skype_log_db_conn) {? ? $global_skype_log_db_conn = mysql_connect($global_skype_db_config['hostname'],$global_skype_db_config['username'],$global_skype_db_config['password']);? ?}? ?if (!$global_skype_log_db_conn) {? ? die('Mysql_Error:' . __FILE__ . '|' . __LINE__ . '|' . mysql_error());? ?}? ?mysql_query('use ' . $global_skype_db_config['database'],$global_skype_log_db_conn);? ?mysql_query('set names utf8 ',$global_skype_log_db_conn);? ? ?$account = getAdminAccount();? ?$nickname = getAdminNickname();? ?$user_id = getAdminUserId();? ?$ipaddr = get_client_ip();? ?$query_string = print_r(array_merge($_GET,$_POST),true);? ? ?$desc = $desc;? ?$is_desc = 0;? ?$unique_flag = $unique_flag;? ?if ($desc) {? ? $is_desc = 1;? ?}? ? ?$insert_time = date('Y-m-d H:i:s');? ? ?$query = "INSERT INTO `" . C('LOG_DB_TABLE') . "` (`guid`,`account`,`nickname`,`addtime`,`app`,`action`,? ??? `method`,`query_string`,`is_desc`,`desc`,`ipaddr`,`unique_flag`) VALUES ('$user_id','$account','$nickname','$insert_time','$app',? ??? '$action','$method','$query_string','$is_desc','$desc','$ipaddr','$unique_flag');";? ? ?return mysql_query($query,$global_skype_log_db_conn);? }? ? function getAdminAccount() {? ?return $_SESSION['loginAccount'];? }? ? function getAdminNickname() {? ?return $_SESSION['loginUserName'];? }? ? function getAdminUserId() {? ?return $_SESSION[C('USER_AUTH_KEY')];? } 在其他操作类里调用addOperationLog();即可 PHP实战希望本文所述对大家的ThinkPHP框架程序设计有所帮助. 《:THINKPHP项目开发中的日志记录实例分析》是否对您有启发,欢迎查看更多与《:THINKPHP项目开发中的日志记录实例分析》相关教程,学精学透。编程之家 52php.cn为您提供精彩教程。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |