本文整理汇总了PHP中log::set_filename方法的典型用法代码示例。如果您正苦于以下问题:PHP log::set_filename方法的具体用法?PHP log::set_filename怎么用?PHP log::set_filename使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类log
的用法示例。
在下文中一共展示了log::set_filename方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: plugin_log_whois_convert
/**
* アクションプラグイン処理
*/
function plugin_log_whois_convert()
{
global $log;
global $log_ua;
global $_log_whois_msg;
if (!$log['guess_user']['use']) {
return '';
}
// 推定ユーザ処理が無効の場合
$filename = log::set_filename('guess_user', '');
// ログファイル名
// ログの読み込み
if (!file_exists($filename)) {
return '';
}
$src = @file($filename);
$guess = array();
foreach ($src as $_src) {
$data = log::table2array($_src);
// 0:ua 1:host 2:user
$guess[$data[0]][$data[1]][$data[2]] = '';
}
$host = log::ip2host();
if (!isset($guess[$log_ua][$host])) {
return '';
}
$uname = '';
foreach ($guess[$log_ua][$host] as $user => $val) {
$uname .= !empty($uname) ? ',' . $user : $user;
}
return sprintf($_log_whois_msg['msg_whois'], $uname);
}
示例2: plugin_log_guess_user_convert
/**
* アクションプラグイン処理
*/
function plugin_log_guess_user_convert()
{
global $_log_guess_user_msg;
global $log;
// ユーザを推測する
// $user = log::guess_user( $data['user'], $data['ntlm'], $data['sig'] );
$filename = log::set_filename('guess_user', '');
// ログファイル名
$src = array();
$master = array();
if (file_exists($filename)) {
$src = @file($filename);
}
// ログの読み込み
foreach ($src as $_src) {
$data = log::table2array($_src);
// 0:ua 1:host 2:user
$master[$data[0]][$data[1]][$data[2]] = '';
}
// 更新ログから署名情報の収集
// $guess[ USER-AGENT ][ ホスト名 ][ ユーザ名 ][任意欄] の配列を戻す
$guess = log::summary_signature();
$i = 0;
foreach ($guess as $ua => $val1) {
foreach ($val1 as $host => $val2) {
foreach ($val2 as $user => $val3) {
if (isset($master[$ua][$host][$user])) {
continue;
}
log_put($filename, '|' . $ua . '|' . $host . '|' . $user . '||');
$i++;
}
}
}
$msg = sprintf($_log_guess_user_msg['msg_put'], $i);
return $msg;
}
示例3: read_guess
/**
* 推測ユーザデータから署名情報の収集
* @return array
* $rc[ USER-AGENT ][ ホスト名 ][ ユーザ名 ] の配列を戻す
* @static
*/
function read_guess()
{
global $log;
if (!$log['guess_user']['use']) {
return '';
}
$filename = log::set_filename('guess_user', '');
// ログファイル名
$src = @file($filename);
$sum = array();
foreach ($src as $_src) {
$x = trim($_src);
$field = log::table2array($x);
// PukiWiki 表形式データを配列データに変換
if (count($field) == 0) {
continue;
}
$user = empty($field[3]) ? $field[2] : $field[3];
// 任意欄が記入されていれば、それを採用
$sum[$field[0]][$field[1]][$user] = '';
}
return $sum;
}
示例4: log
<?php
//
// logクラス(テスト)
//
require_once "./log.php";
// 基本設定
$log = new log();
$log->set_filename("./test.log");
// ログを書き出すファイル名(パス)
$log->set_pname("winny");
// プログラム名
// デフォルトonのものたち
//$log->spreadtime_off(); // offならエポックで出るはず。。
//$log->off(); // offならファイルに書き込まれないはず。。
// ログを残したいなと思ったら...
$log->add("ultra fatal error!");
// 残す!
$log->pause();
// 区切りを入れて..
$log->add("--");
// 残す!
$log->add("ろぐをしっかり残そう");
// 残す!
//var_dump($log);
$log->flush();
// ファイルに書き出し
// そのまま次のログに使える。
$log->add("2回目");
// 残す!
$log->add(": fatal error.");
示例5: plugin_logview_action
/**
* アクションプラグイン処理
*/
function plugin_logview_action()
{
global $vars, $_logview_msg;
global $log, $sortable_tracker;
static $count = 0;
$kind = isset($vars['kind']) ? $vars['kind'] : 'update';
$title = sprintf($_logview_msg['msg_title'], $kind);
// タイトルを設定
$page = isset($vars['page']) ? $vars['page'] : '';
// ゲスト表示ができない場合は、認証を要求する
if ($log[$kind]['guest'] == '') {
$obj = new auth();
$user = $obj->check_auth();
if (empty($user)) {
if (exist_plugin('login')) {
do_plugin_action('login');
}
unset($obj);
return array('msg' => $title, 'body' => $_logview_msg['msg_not_auth']);
}
}
unset($obj);
check_readable($page, false);
// 保存データの項目名を取得
$name = log::get_log_field($kind);
$view = log::get_view_field($kind);
// 表示したい項目設定
if ($sortable_tracker && $count == 0) {
global $head_tags;
$head_tags[] = ' <script type="text/javascript" charset="utf-8" src="' . SKIN_URI . 'sortabletable.js"></script>';
}
$count++;
$body = <<<EOD
<table id="logview{$count}" class="style_table" cellspacing="1" border="0">
<thead>
<tr>
EOD;
$cols = 0;
$is_role_adm = auth::check_role('role_adm');
// タイトルの処理
foreach ($view as $_view) {
if ($_view === 'local_id' && $is_role_adm) {
continue;
}
$body .= '<td class="style_td">' . $_logview_msg[$_view] . '</td>' . "\n";
$cols++;
}
$body .= <<<EOD
</tr>
</thead>
<tbody>
EOD;
// データを取得
$fld = logview_get_data(log::set_filename($kind, $page), $name);
if (empty($fld)) {
return array('msg' => $title, 'body' => 'no data');
}
// USER-AGENT クラス
$obj_ua = new user_agent(USE_UA_OPTION);
$path_flag = IMAGE_URI . 'icon/flags/';
$path_browser = IMAGE_URI . 'icon/browser/';
$path_os = IMAGE_URI . 'icon/os/';
$path_domain = IMAGE_URI . 'icon/option/domain/';
$guess = $log['guess_user']['use'] ? log::read_guess() : log::summary_signature();
$ctr = 0;
// データの編集
foreach ($fld as $data) {
if (!VIEW_ROBOTS && $obj_ua->is_robots($data['ua'])) {
continue;
}
// ロボットは対象外
$body .= "<tr>\n";
foreach ($view as $field) {
switch ($field) {
case 'ts':
// タイムスタンプ (UTIME)
$body .= ' <td class="style_td">' . get_date('Y-m-d H:i:s', $data['ts']) . ' ' . get_passage($data['ts']) . "</td>\n";
break;
case '@guess_diff':
case '@diff':
// 差分内容
$update = $field == '@diff' ? true : false;
// FIXME: バックアップ/差分 なしの新規の場合
// バックアップデータの確定
$body .= ' <td class="style_td">';
$age = log::get_backup_age($page, $data['ts'], $update);
switch ($age) {
case -1:
// データなし
$body .= '<a class="ext" href="' . get_page_uri($page) . '" rel="nofollow">none</a>';
break;
case 0:
// diff
$body .= '<a class="ext" href="';
$body .= log::diff_exist($page) ? get_cmd_uri('diff', $page) : get_page_uri($page);
//.........这里部分代码省略.........