188 lines
3.6 KiB
PHP
Executable File
188 lines
3.6 KiB
PHP
Executable File
<?php declare(strict_types=1); namespace IR\Core; if (!defined('IR_START')) exit('<pre>No direct script access allowed</pre>');
|
|
/**
|
|
* @framework Wevads Framework
|
|
* @version 1.0
|
|
* @author Amine Idrissi <contact@iresponse.tech>
|
|
* @date 2019
|
|
* @name Utils.php
|
|
*/
|
|
|
|
# utilities
|
|
use IR\Utils\Types\Arrays as Arrays;
|
|
use IR\Utils\Types\Strings as Strings;
|
|
use IR\Utils\Types\Objects as Objects;
|
|
use IR\Utils\Types\XML as XML;
|
|
|
|
# os
|
|
use IR\Utils\System\FileSystem as FileSystem;
|
|
use IR\Utils\System\Terminal as Terminal;
|
|
|
|
# security
|
|
use IR\Utils\Security\Encryptor as Encryptor;
|
|
|
|
# output
|
|
use IR\Utils\Output\Printer as Printer;
|
|
|
|
# compression
|
|
use IR\Utils\Compression\Zip as Zip;
|
|
|
|
# meta
|
|
use IR\Utils\Meta\Inspector as Inspector;
|
|
|
|
# web
|
|
use IR\Utils\Web\Domains as Domains;
|
|
|
|
/**
|
|
* @name Utils
|
|
* @description core utils class
|
|
*/
|
|
class Utils
|
|
{
|
|
/**
|
|
* @name getInstance
|
|
* @description singleton access to constructor
|
|
* @access public | static
|
|
* @return Utils
|
|
*/
|
|
public static function getInstance() : Utils
|
|
{
|
|
if(self::$_instance == null)
|
|
{
|
|
self::$_instance = new Utils();
|
|
}
|
|
|
|
return self::$_instance;
|
|
}
|
|
|
|
/**
|
|
* @name __construct
|
|
* @description class constructor
|
|
* @access private
|
|
* @return Utils
|
|
*/
|
|
private function __construct()
|
|
{
|
|
$this->arrays = Arrays::getInstance();
|
|
$this->strings = Strings::getInstance();
|
|
$this->objects = Objects::getInstance();
|
|
$this->xml = XML::getInstance();
|
|
|
|
$this->fileSystem = FileSystem::getInstance();
|
|
$this->terminal = Terminal::getInstance();
|
|
|
|
$this->encryptor = Encryptor::getInstance();
|
|
$this->printer = Printer::getInstance();
|
|
$this->zip = Zip::getInstance();
|
|
$this->inspector = Inspector::getInstance();
|
|
$this->domains = Domains::getInstance();
|
|
}
|
|
|
|
/**
|
|
* @name __clone
|
|
* @description preventing cloning object
|
|
* @access public
|
|
* @return Utils
|
|
*/
|
|
public function __clone()
|
|
{
|
|
return (self::$_instance != null) ? self::$_instance : new Utils();
|
|
}
|
|
|
|
/**
|
|
* @readwrite
|
|
* @access private
|
|
* @var Utils
|
|
*/
|
|
private static $_instance;
|
|
|
|
/**
|
|
* @read
|
|
* @access public
|
|
* @var Arrays
|
|
*/
|
|
public $arrays;
|
|
|
|
/**
|
|
* @read
|
|
* @access public
|
|
* @var Strings
|
|
*/
|
|
public $strings;
|
|
|
|
/**
|
|
* @read
|
|
* @access public
|
|
* @var Objects
|
|
*/
|
|
public $objects;
|
|
|
|
/**
|
|
* @read
|
|
* @access public
|
|
* @var XML
|
|
*/
|
|
public $xml;
|
|
|
|
/**
|
|
* @read
|
|
* @access public
|
|
* @var FileSystem
|
|
*/
|
|
public $fileSystem;
|
|
|
|
/**
|
|
* @read
|
|
* @access public
|
|
* @var Terminal
|
|
*/
|
|
public $terminal;
|
|
|
|
/**
|
|
* @read
|
|
* @access public
|
|
* @var Encryptor
|
|
*/
|
|
public $encryptor;
|
|
|
|
/**
|
|
* @read
|
|
* @access public
|
|
* @var Printer
|
|
*/
|
|
public $printer;
|
|
|
|
/**
|
|
* @read
|
|
* @access public
|
|
* @var Zip
|
|
*/
|
|
public $zip;
|
|
|
|
/**
|
|
* @read
|
|
* @access public
|
|
* @var Inspector
|
|
*/
|
|
public $inspector;
|
|
|
|
/**
|
|
* @read
|
|
* @access public
|
|
* @var Domains
|
|
*/
|
|
public $domains;
|
|
|
|
/**
|
|
* @read
|
|
* @access public
|
|
* @var HTML
|
|
*/
|
|
public $html;
|
|
|
|
/**
|
|
* @read
|
|
* @access public
|
|
* @var LinksShortener
|
|
*/
|
|
public $linksShortener;
|
|
} |