/** * Render a dump for a string value * * @param mixed $data * @param string $name * @access private * @static */ private static function _string($data, $name) { $collapsed = Dumper::_isCollapsed(self::$_level, 1); if ($collapsed) { $collapse_style = 'style="display: none;"'; } else { $collapse_style = ''; } // extra $_extra = false; $_ = $data; // Get the truncate length from the config, or default to 100 $truncate_length = Dumper::_config('display', 'truncate_length', 100); if (strLen($data) > $truncate_length) { $_ = substr($data, 0, $truncate_length - 1); $_extra = true; } $expand_class = ''; if ($_extra) { $expand_class = 'krumo-expand'; } print "<li class=\"dumper-child\">"; print "<div class=\"dumper-element {$expand_class}\" "; if ($_extra) { print " onClick=\"dumper.toggle(this);\" "; } print "onMouseOver=\"dumper.over(this);\" onMouseOut=\"dumper.out(this);\">\n"; print "<a class=\"dumper-name\">{$name}</a> "; print "<em class=\"dumper-type\">str(<strong class=\"dumper-string-length\">" . strlen($data) . "</strong>)</em> "; print Dumper::get_separator() . " <strong class=\"dumper-string\">" . htmlspecialchars($_); // This has to go AFTER the htmlspecialchars if ($_extra) { print "…"; } print "</strong>"; $ut = Dumper::is_datetime($name, $data); if ($ut) { print " ~ <strong class=\"dumper-datetime\">{$ut}</strong>"; } // callback if (is_callable($data)) { print "<span class=\"dumper-callback\"> | "; print "(<em class=\"dumper-type\">Callback</em>) <strong class=\"dumper-string\">" . htmlSpecialChars($_) . "()</strong></span>"; } print "</div>"; if ($_extra) { print "<div class=\"dumper-nest\" {$collapse_style}>"; print "<ul class=\"dumper-node\">"; print "<li class=\"dumper-child\"> <div class=\"dumper-preview\">" . htmlSpecialChars($data) . "</div></li>"; print "</ul></div>"; } print "</li>"; }