1C-Bitrix 25.700.0
Загрузка...
Поиск...
Не найдено
debug.php
См. документацию.
1<?php
2
3namespace Bitrix\Main\Diag;
4
5class Debug
6{
8 protected static $timers = [];
9 protected static $timeLabels = [];
10
11 public static function startTimeLabel($name)
12 {
13 if (!isset(static::$timers[$name]))
14 {
15 static::$timers[$name] = new StopWatch();
16 }
17 static::$timers[$name]->start();
18 }
19
20 public static function endTimeLabel($name)
21 {
22 static::$timeLabels[$name]['time'] = (static::$timers[$name] ?? null)?->stop();
23 }
24
25 public static function getTimeLabels()
26 {
27 return static::$timeLabels;
28 }
29
30 public static function dump($var, $varName = "", $return = false)
31 {
32 if ($return)
33 {
34 ob_start();
35 }
36
37 $flComplex = (is_array($var) || is_object($var));
38
39 if ($varName != "")
40 {
41 echo $varName;
42
43 if ($flComplex)
44 {
45 echo ":" . ($return ? "\n" : "<br />");
46 }
47 else
48 {
49 echo "=";
50 }
51 }
52
53 if ($flComplex && !$return)
54 {
55 echo "<pre>";
56 }
57
58 var_dump($var);
59
60 if ($flComplex && !$return)
61 {
62 echo "</pre>";
63 }
64 echo ($return ? "\n" : "<br />");
65
66 if ($return)
67 {
68 return ob_get_clean();
69 }
70
71 return null;
72 }
73
74 public static function dumpToFile($var, $varName = "", $fileName = "")
75 {
76 if (empty($fileName))
77 {
78 $fileName = "__bx_log.log";
79 }
80
81 $data = self::dump($var, $varName, true);
82
83 file_put_contents($_SERVER["DOCUMENT_ROOT"] . "/" . $fileName, $data . "\n", FILE_APPEND);
84 }
85
86 public static function writeToFile($var, $varName = "", $fileName = "")
87 {
88 if (empty($fileName))
89 {
90 $fileName = "__bx_log.log";
91 }
92
93 $data = "";
94 if ($varName != "")
95 {
96 $data .= $varName . ":\n";
97 }
98
99 if (is_array($var))
100 {
101 $data .= print_r($var, true) . "\n";
102 }
103 else
104 {
105 $data .= $var . "\n";
106 }
107
108 file_put_contents($_SERVER["DOCUMENT_ROOT"] . "/" . $fileName, $data . "\n", FILE_APPEND);
109 }
110}
Определения debug.php:6
static dump($var, $varName="", $return=false)
Определения debug.php:30
static startTimeLabel($name)
Определения debug.php:11
static getTimeLabels()
Определения debug.php:25
static $timers
Определения debug.php:8
static writeToFile($var, $varName="", $fileName="")
Определения debug.php:86
static $timeLabels
Определения debug.php:9
static dumpToFile($var, $varName="", $fileName="")
Определения debug.php:74
static endTimeLabel($name)
Определения debug.php:20
$data['IS_AVAILABLE']
Определения .description.php:13
$_SERVER["DOCUMENT_ROOT"]
Определения cron_frame.php:9
$name
Определения menu_edit.php:35
$var
Определения payment.php:63
$fileName
Определения quickway.php:305