本文整理匯總了PHP中think\Log::init方法的典型用法代碼示例。如果您正苦於以下問題:PHP Log::init方法的具體用法?PHP Log::init怎麽用?PHP Log::init使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類think\Log
的用法示例。
在下文中一共展示了Log::init方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: testWrite
public function testWrite()
{
Log::init(['type' => 'test']);
Log::clear();
$this->assertTrue(Log::write('hello', 'info'));
$this->assertTrue(Log::write([1, 2, 3], 'log'));
}
示例2: run
/**
* 執行應用程序
* @access public
* @return void
*/
public static function run($config)
{
// 日誌初始化
Log::init($config['log']);
// 緩存初始化
Cache::connect($config['cache']);
// 加載框架底層語言包
if (is_file(THINK_PATH . 'Lang/' . strtolower($config['default_lang']) . EXT)) {
Lang::set(include THINK_PATH . 'Lang/' . strtolower($config['default_lang']) . EXT);
}
if (is_file(APP_PATH . 'build.php')) {
// 自動化創建腳本
Create::build(include APP_PATH . 'build.php');
}
// 監聽app_init
Hook::listen('app_init');
// 初始化公共模塊
define('COMMON_PATH', APP_PATH . $config['common_module'] . '/');
self::initModule(COMMON_PATH, $config);
// 啟動session
if (!IS_CLI) {
Session::init($config['session']);
}
// 應用URL調度
self::dispatch($config);
// 監聽app_run
Hook::listen('app_run');
// 執行操作
if (!preg_match('/^[A-Za-z](\\/|\\w)*$/', CONTROLLER_NAME)) {
// 安全檢測
$instance = false;
} elseif ($config['action_bind_class']) {
// 操作綁定到類:模塊\controller\控製器\操作
if (is_dir(MODULE_PATH . CONTROLLER_LAYER . '/' . CONTROLLER_NAME)) {
$namespace = MODULE_NAME . '\\' . CONTROLLER_LAYER . '\\' . CONTROLLER_NAME . '\\';
} else {
// 空控製器
$namespace = MODULE_NAME . '\\' . CONTROLLER_LAYER . '\\empty\\';
}
$actionName = strtolower(ACTION_NAME);
if (class_exists($namespace . $actionName)) {
$class = $namespace . $actionName;
} elseif (class_exists($namespace . '_empty')) {
// 空操作
$class = $namespace . '_empty';
} else {
throw new Exception('_ERROR_ACTION_:' . ACTION_NAME);
}
$instance = new $class();
// 操作綁定到類後 固定執行run入口
$action = 'run';
} else {
$instance = Loader::controller(CONTROLLER_NAME);
// 獲取當前操作名
$action = ACTION_NAME . $config['action_suffix'];
}
if (!$instance) {
throw new Exception('[ ' . MODULE_NAME . '\\' . CONTROLLER_LAYER . '\\' . Loader::parseName(CONTROLLER_NAME, 1) . ' ] not exists');
}
try {
// 操作方法開始監聽
$call = [$instance, $action];
Hook::listen('action_begin', $call);
if (!preg_match('/^[A-Za-z](\\w)*$/', $action)) {
// 非法操作
throw new \ReflectionException();
}
//執行當前操作
$method = new \ReflectionMethod($instance, $action);
if ($method->isPublic()) {
// URL參數綁定檢測
if ($config['url_params_bind'] && $method->getNumberOfParameters() > 0) {
switch ($_SERVER['REQUEST_METHOD']) {
case 'POST':
$vars = array_merge($_GET, $_POST);
break;
case 'PUT':
parse_str(file_get_contents('php://input'), $vars);
break;
default:
$vars = $_GET;
}
$params = $method->getParameters();
$paramsBindType = $config['url_parmas_bind_type'];
foreach ($params as $param) {
$name = $param->getName();
if (1 == $paramsBindType && !empty($vars)) {
$args[] = array_shift($vars);
}
if (0 == $paramsBindType && isset($vars[$name])) {
$args[] = $vars[$name];
} elseif ($param->isDefaultValueAvailable()) {
$args[] = $param->getDefaultValue();
} else {
throw new Exception('_PARAM_ERROR_:' . $name);
//.........這裏部分代碼省略.........
示例3: run
public function run(&$params)
{
$logConfig = array('type' => C('LOG_TYPE'), 'log_time_format' => ' c ', 'log_file_size' => C('LOG_FILE_SIZE'), 'log_path' => LOG_PATH);
Log::init($logConfig);
}
示例4: setUp
protected function setUp()
{
Log::init(['type' => 'file']);
}