十年網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無(wú)憂售后,網(wǎng)站問(wèn)題一站解決
分享一個(gè)我自己用的在 WordPress 開(kāi)發(fā)中用得到的一個(gè)調(diào)試日志類。
創(chuàng)新互聯(lián)公司專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站制作、做網(wǎng)站、平城網(wǎng)絡(luò)推廣、重慶小程序開(kāi)發(fā)、平城網(wǎng)絡(luò)營(yíng)銷、平城企業(yè)策劃、平城品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)公司為所有大學(xué)生創(chuàng)業(yè)者提供平城建站搭建服務(wù),24小時(shí)服務(wù)熱線:18980820575,官方網(wǎng)址:www.cdcxhl.com
dir = dirname($main_file).DIRECTORY_SEPARATOR.'debug'.DIRECTORY_SEPARATOR; $file_name = 'debug_'.md5($main_file).'.log'; $this->debug_file_name = (function_exists('apply_filters'))?apply_filters('cwp_debug_log_file_name',$file_name).'.log':$file_name.'.log'; $this->f_path = $this->dir.$this->debug_file_name; $this->check_log_file(); } /** * adding log item * @param string $text : adding content */ public function add($text) { date_default_timezone_set('Asia/Shanghai'); if(is_array($text)||is_obeject($text)){ $text = json_encode($text); } $fp = fopen( $this->f_path,"a"); flock($fp, LOCK_EX) ; fwrite($fp,"".date("Y-m-d H:i:s",time())."\n".$text."\n\n"); flock($fp, LOCK_UN); fclose($fp); //return true; // } /** * checking the log file and path. * @return null */ private function check_log_file(){ $is_dir = is_dir($this->dir); $is_file = file_exists($this->f_path); if($is_dir && $is_file) return; if(!$is_dir||!$is_file){ if(!$is_dir){ $md = mkdir($this->dir,0777,true); } if(!$is_file){ $fp = fopen( $this->f_path,"a"); fclose($fp); } } } }/*//CLASS*/ } /*ALL DONE.*/ ?>
以 WordPress 插件為例的用例:
在插件主文件的適當(dāng)位置加入(假如上述代碼放置在class-coolwp-debug-log.php文件中):
$this->is_debug = true; if($this->is_debug){ require_once( plugin_dir_path(__FILE__).'classes/class-coolwp-debug-log.php'); $this->Log = new CoolWP_com_Log(); }
如果在插件主文件中將__FILE__定義為常量 SOMEONE_THIS,那么,可以將SOMEONE_THIS 作為參數(shù)傳給CoolWP_com_Log(),例如:
$this->Log = new CoolWP_com_Log(SOMEONE_THIS);
傳不傳參數(shù)的區(qū)別是日志文件的位置不同,如果不傳參數(shù),日志文件位于class-coolwp-debug-log.php所在目錄下的debug目錄下;如果傳遞了SOMEONE_THIS參數(shù),那么,日志文件位于插件主目錄下的debug目錄下。日志文件的文件名稱為debug_*******log。
日志條目默認(rèn)采用北京時(shí)間。