From 546b2e8e6bcb87b32c43b683a2f3c767632d8e18 Mon Sep 17 00:00:00 2001
From: xue <>
Date: Mon, 28 Aug 2006 02:49:48 +0000
Subject: Prado::fatalError() now displays function parameter information

---
 framework/PradoBase.php | 36 +++++++++++++++++++++++++++++++-----
 1 file changed, 31 insertions(+), 5 deletions(-)

(limited to 'framework')

diff --git a/framework/PradoBase.php b/framework/PradoBase.php
index 30b98f53..cf1d67fb 100644
--- a/framework/PradoBase.php
+++ b/framework/PradoBase.php
@@ -389,12 +389,38 @@ class PradoBase
 			echo ' -- ';
 			if(isset($t['class']))
 				echo $t['class'] . $t['type'];
-			echo $t['function'];
+			echo $t['function'] . '(';
 			if(isset($t['args']) && sizeof($t['args']) > 0)
-				echo '(...)';
-			else
-				echo '()';
-			echo "\n";
+			{
+				$count=0;
+				foreach($t['args'] as $item)
+				{
+					if(is_string($item))
+					{
+						$str=htmlentities(str_replace("\r\n", "", $item), ENT_QUOTES);
+						if (strlen($item) > 70)
+							echo "'". substr($str, 0, 70) . "...'";
+						else
+							echo "'" . $str . "'";
+					}
+					else if (is_int($item) || is_float($item))
+						echo $item;
+					else if (is_object($item))
+						echo get_class($item);
+					else if (is_array($item))
+						echo 'array(' . count($item) . ')';
+					else if (is_bool($item))
+						echo $item ? 'true' : 'false';
+					else if (is_null($item))
+						echo 'NULL';
+					else if (is_resource($item))
+						echo get_resource_type($item);
+					$count++;
+					if (count($t['args']) > $count)
+						echo ', ';
+				}
+			}
+			echo ")\n";
 		}
 		echo '</pre>';
 		exit(1);
-- 
cgit v1.2.3