瀏覽代碼

added nicePrint in DBG

Piotr Labudda 10 年之前
父節點
當前提交
1580f5f222
共有 1 個文件被更改,包括 33 次插入0 次删除
  1. 33 0
      SE/se-lib/DBG.php

+ 33 - 0
SE/se-lib/DBG.php

@@ -112,4 +112,37 @@ class DBG {
 <?php
 <?php
 	}
 	}
 
 
+	public static function nicePrint($variable, $varName) {
+		$cnt = '';
+		ob_start();
+			print_r($variable);
+			$cnt = ob_get_contents();
+		ob_end_clean();
+
+		$outLines = array();
+		$lines = explode("\n", $cnt);
+		if ($varName) $lines[0] = '<b style="color:#ff5252">' . $varName . "</b> => {$lines[0]}";
+		foreach ($lines as $line) {
+			if ('(' == trim($line)) continue;
+			if (')' == trim($line)) continue;
+			if ('' == trim($line)) continue;
+			if ('Array' == substr($line, -5) || 'stdClass' == substr($line, -5)) {
+				$line = str_replace('Array', '<span style="color:#41a541">Array</span>', $line);
+				$line = str_replace('stdClass', '<span style="color:#41a541">stdClass</span>', $line);
+				$line .= ':';
+			}
+			if (($firstBracket = strpos($line, '[')) > 0) {
+				$line = str_replace("\t", '  ', $line);
+				$splitPos = ($firstBracket > 4)? ($firstBracket - 4) / 4 + 2 : 2;
+				$line = substr($line, $firstBracket - $splitPos);
+
+				$line = preg_replace('/\[(\w+)\]/', '[<span style="color:#5a5aff">\1</span>]', $line);
+				$line = preg_replace('/\] \=\> (\w+)$/', '] => <span style="color:#e88501">\1</span>', $line);
+			}
+			$outLines[] = $line;
+		}
+		$outLines = implode("\n", $outLines);
+		echo $outLines;
+	}
+
 }
 }