vk/system/Core.php

89 lines
1.8 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
declare(strict_types=1);
namespace VK;
use \VK\Loggers\Jasmo;
use \VK\Traits\Singleton;
use \VK\Traits\Registry;
/**
* Ядро фреймворка для работы с VK API
*
* @package VK
*
* @property int robots Количество роботов
*
* @method build(...$params) Инициализация сборщика
*
* @author Arsen Mirzaev
*/
class Core
{
use Singleton, Registry {
Singleton::__construct insteadof Registry;
}
/**
* Количество роботов
*
* Хранит экземпляры роботов по их идентификаторам
*
* @var int
*/
public static int $robots = 0;
/**
* Временная зона
*
* Используется в логировании
*
* @var string
*/
public static string $timezone = 'Europe/Moscow';
/**
* Пути
*
* Архитектура проекта
*
* @var array
*/
public static array $path = [
'root' => '',
'log' => ''
];
protected function __construct() {
self::$path = [
'root' => dirname(__DIR__) . '..',
'log' => self::$path['root'] . '/log'
];
}
/**
* Инициализация сборщика
*
* @return Builder
*/
public function build(): Builder
{
return new Builder();
}
/**
* Активация журналирования
*
* @return Core
*
* @todo Добавить установку иного журналиста по спецификации PSR-3
*/
public function log($file = null): Core
{
Jasmo::init()::post($file)::postErrorHandler()::postShutdownHandler();
return $this;
}
}