Прошу jQuery + плагины не предлагать. Что-нибудь простое.
Типа:
document.write(mydump(data));
Форум → Программирование → JavaScript → Аналог var_export ?
Страницы: ← Следующая страница →
14 сентября 2010 г. 7:59, спустя 8 минут 45 секунд
14 сентября 2010 г. 8:00, спустя 1 минуту 19 секунд
14 сентября 2010 г. 8:02, спустя 1 минуту 48 секунд
14 сентября 2010 г. 9:43, спустя 1 час 40 минут 33 секунды
function dump(varval, varname)
{
var text = '';
var padding = '';
if (typeof(dump.level) == 'undefined') dump.level = 0;
dump.level++;
for(var j = 1; j < dump.level; j++) padding += ' ';
text = padding;
if (typeof(varname) != 'undefined') {
text += '"' + varname + '"' + ': ';
}
if (typeof(varval) == 'object') {
text += '{\n';
for (var key in varval) {
var val = varval[key];
text += dump(val, key);
}
text += padding + '},\n';
} else {
text += '"' + varval + '"' + ',\n';
}
dump.level–;
return text;
}
14 сентября 2010 г. 9:58, спустя 15 минут 12 секунд
14 сентября 2010 г. 10:29, спустя 31 минуту 6 секунд
<?php
class QbApp
{
function end()
{
$time = microtime(TRUE);
$start = Qb::get('start');
$data = array(
'request' => $_SERVER['REQUEST_METHOD'] . ':' . $_SERVER['REQUEST_URI'],
'at' => gmdate('r', $start),
'time' => $time - $start,
'log' => QbLog::get(),
);
$fileName = dirname(__FILE__) . '/../log/' . $start . '.txt';
file_put_contents($fileName, json_encode($data));
}
}
<?php
if (!isset($_GET['id']) || strspn($_GET['id'], '1234567890.') != strlen($_GET['id'])) {
die('Wrong id');
}
$file = './log/'.$_GET['id'].'.txt';
if (!file_exists($file)) {
die('Log not found');
}
$data = file_get_contents($file);
?>
<script type="text/javascript">
var data = <?php echo $data ?>;
function dump(varval, varname)
{
var text = '';
var padding = '';
if (typeof(dump.level) == 'undefined') dump.level = 0;
dump.level++;
for(var j = 1; j < dump.level; j++) padding += ' ';
text = padding;
if (typeof(varname) != 'undefined') {
text += '"' + varname + '"' + ': ';
}
if (typeof(varval) == 'object') {
text += '{\n';
for (var key in varval) {
var val = varval[key];
text += dump(val, key);
}
text += padding + '},\n';
} else {
text += '"' + varval + '"' + ',\n';
}
dump.level–;
return text;
}
</script>
<h1>Debug info</h1>
<script type="text/javascript">
document.write('<b>Request</b>: ' + data['request'] + '<br/>\n');
document.write('<b>At</b>: ' + data['at'] + '<br/>\n');
document.write('<b>Exec. time</b>: ' + data['time'] + ' sec<br/>\n');
document.write('<h2>Log</h2><pre>' + dump(data['log']) + '</pre>');
</script>
14 сентября 2010 г. 11:38, спустя 1 час 8 минут 54 секунды
14 сентября 2010 г. 12:32, спустя 54 минуты 22 секунды
14 сентября 2010 г. 12:59, спустя 26 минут 57 секунд
26 сентября 2010 г. 10:16, спустя 11 дней 21 час 16 минут
<script type="text/javascript" src="js/dump.js"></script>
<script type="text/javascript" src="<?php echo $app->debugFile ?>"></script>
26 сентября 2010 г. 13:23, спустя 3 часа 7 минут 4 секунды
str_ireplace('</body>', $toolbar . '</body>', $response->getContent());
26 сентября 2010 г. 14:15, спустя 13 минут 25 секунд
Получил проблему курицы и яйца: в момент рендеринга страницы я еще не обладаю всей нужной инфой.
26 сентября 2010 г. 14:42, спустя 27 минут 40 секунд
Страницы: ← Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!