当前位置: 首页>>代码示例>>PHP>>正文


PHP Dumper类代码示例

本文整理汇总了PHP中Dumper的典型用法代码示例。如果您正苦于以下问题:PHP Dumper类的具体用法?PHP Dumper怎么用?PHP Dumper使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了Dumper类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: ocd_restore

 function ocd_restore()
 {
     $file = $this->GetGP("file");
     $appRoot = $this->sitePath;
     $dumper = new Dumper(DbName, $appRoot . "data/backups/");
     $file_name = $dumper->restore($file);
     if ($file_name != "") {
         $this->Redirect($this->pageUrl . "?ec=restore_ok&fn={$file_name}");
     } else {
         $this->Redirect($this->pageUrl . "?ec=restore_error");
     }
 }
开发者ID:romlg,项目名称:blank-xpage,代码行数:12,代码来源:backup.php

示例2: testDumpSubsections

    public function testDumpSubsections()
    {
        $data = array('main' => array('explore' => true, 'sub' => array('sub' => array('value' => 5))));
        $dumper = new Dumper();
        $result = $dumper->dump($data);
        $expected = <<<EOT
[main]
explore=true

[main.sub]

[main.sub.sub]
value=5

EOT;
        $this->assertEquals($expected, $result);
    }
开发者ID:mauris,项目名称:ini-writer,代码行数:17,代码来源:DumperTest.php

示例3: render

 /**
  * Renders debug bar.
  * @return void
  */
 public function render()
 {
     $useSession = $this->dispatched && session_status() === PHP_SESSION_ACTIVE;
     $redirectQueue =& $_SESSION['_tracy']['redirect'];
     if (!Helpers::isHtmlMode() && !Helpers::isAjax()) {
         return;
     } elseif (Helpers::isAjax()) {
         $rows[] = (object) ['type' => 'ajax', 'panels' => $this->renderPanels('-ajax')];
         $dumps = Dumper::fetchLiveData();
         $contentId = $useSession ? $_SERVER['HTTP_X_TRACY_AJAX'] . '-ajax' : NULL;
     } elseif (preg_match('#^Location:#im', implode("\n", headers_list()))) {
         // redirect
         $redirectQueue = array_slice((array) $redirectQueue, -10);
         Dumper::fetchLiveData();
         Dumper::$livePrefix = count($redirectQueue) . 'p';
         $redirectQueue[] = ['panels' => $this->renderPanels('-r' . count($redirectQueue)), 'dumps' => Dumper::fetchLiveData()];
         return;
     } else {
         $rows[] = (object) ['type' => 'main', 'panels' => $this->renderPanels()];
         $dumps = Dumper::fetchLiveData();
         foreach (array_reverse((array) $redirectQueue) as $info) {
             $rows[] = (object) ['type' => 'redirect', 'panels' => $info['panels']];
             $dumps += $info['dumps'];
         }
         $redirectQueue = NULL;
         $contentId = $useSession ? substr(md5(uniqid('', TRUE)), 0, 10) : NULL;
     }
     ob_start(function () {
     });
     require __DIR__ . '/assets/Bar/panels.phtml';
     require __DIR__ . '/assets/Bar/bar.phtml';
     $content = Helpers::fixEncoding(ob_get_clean());
     if ($contentId) {
         $queue =& $_SESSION['_tracy']['bar'];
         $queue = array_slice(array_filter((array) $queue), -5, NULL, TRUE);
         $queue[$contentId] = ['content' => $content, 'dumps' => $dumps];
     }
     if (Helpers::isHtmlMode()) {
         $stopXdebug = extension_loaded('xdebug') ? ['XDEBUG_SESSION_STOP' => 1, 'XDEBUG_PROFILE' => 0, 'XDEBUG_TRACE' => 0] : [];
         $path = isset($_SERVER['REQUEST_URI']) ? explode('?', $_SERVER['REQUEST_URI'])[0] : '/';
         $lpath = strtolower($path);
         $script = isset($_SERVER['SCRIPT_NAME']) ? strtolower($_SERVER['SCRIPT_NAME']) : '';
         if ($lpath !== $script) {
             $max = min(strlen($lpath), strlen($script));
             for ($i = 0; $i < $max && $lpath[$i] === $script[$i]; $i++) {
             }
             $path = $i ? substr($path, 0, strrpos($path, '/', $i - strlen($path) - 1) + 1) : '/';
             $cookiePath = session_get_cookie_params()['path'];
             if (substr($cookiePath, 0, strlen($path)) === $path) {
                 $path = rtrim($cookiePath, '/') . '/';
             }
         }
         require __DIR__ . '/assets/Bar/loader.phtml';
     }
 }
开发者ID:manGoweb,项目名称:mnamGo,代码行数:59,代码来源:Bar.php

示例4: printBacktrace

 /**
  * Output pretty-printed backtrace.
  *
  * @see \Dumper::backtrace
  *
  * @param  mixed $var
  * @return string
  */
 public function printBacktrace($depth = 15)
 {
     if ($this->safe) {
         return null;
     }
     if ($this->app['config']->get('general/debug')) {
         return \Dumper::backtrace($depth, true);
     } else {
         return '';
     }
 }
开发者ID:LeonB,项目名称:site,代码行数:19,代码来源:TwigExtension.php

示例5: renderHtml

 private function renderHtml()
 {
     $res = '<style>code, pre {white-space:nowrap} a {text-decoration:none} pre {color:gray;display:inline} big {color:red}</style><code>';
     foreach ($this->list as $item) {
         $stack = [];
         foreach (array_slice($item[3], 1) as $t) {
             $t += ['class' => '', 'type' => '', 'function' => ''];
             $stack[] = "{$t['class']}{$t['type']}{$t['function']}()" . (isset($t['file'], $t['line']) ? ' in ' . basename($t['file']) . ":{$t['line']}" : '');
         }
         $res .= Helpers::editorLink($item[0], $item[1]) . ' ' . '<span title="' . htmlspecialchars(implode("\n", $stack), ENT_IGNORE | ENT_QUOTES, 'UTF-8') . '">' . str_replace(self::BOM, '<big>BOM</big>', Dumper::toHtml($item[2])) . "</span><br>\n";
     }
     return $res . '</code>';
 }
开发者ID:janlanger,项目名称:tracy,代码行数:13,代码来源:OutputDebugger.php

示例6: formatMessage

 /**
  * @param  string|\Exception|\Throwable
  * @return string
  */
 protected function formatMessage($message)
 {
     if ($message instanceof \Exception || $message instanceof \Throwable) {
         while ($message) {
             $tmp[] = ($message instanceof \ErrorException ? 'Fatal error: ' . $message->getMessage() : get_class($message) . ': ' . $message->getMessage()) . ' in ' . $message->getFile() . ':' . $message->getLine();
             $message = $message->getPrevious();
         }
         $message = implode($tmp, "\ncaused by ");
     } elseif (!is_string($message)) {
         $message = Dumper::toText($message);
     }
     return trim($message);
 }
开发者ID:janlanger,项目名称:tracy,代码行数:17,代码来源:Logger.php

示例7: formatMessage

 /**
  * @param  string|\Exception|\Throwable
  * @return string
  */
 protected function formatMessage($message)
 {
     if ($message instanceof \Exception || $message instanceof \Throwable) {
         while ($message) {
             $tmp[] = ($message instanceof \ErrorException ? Helpers::errorTypeToString($message->getSeverity()) . ': ' . $message->getMessage() : Helpers::getClass($message) . ': ' . $message->getMessage() . ($message->getCode() ? ' #' . $message->getCode() : '')) . ' in ' . $message->getFile() . ':' . $message->getLine();
             $message = $message->getPrevious();
         }
         $message = implode("\ncaused by ", $tmp);
     } elseif (!is_string($message)) {
         $message = Dumper::toText($message);
     }
     return trim($message);
 }
开发者ID:assad2012,项目名称:My_CodeIgniter,代码行数:17,代码来源:Logger.php

示例8: run

 /**
  * Runs the test case.
  * @return void
  */
 public function run($method = NULL)
 {
     $rc = new \ReflectionClass($this);
     $methods = $method ? array($rc->getMethod($method)) : $rc->getMethods(\ReflectionMethod::IS_PUBLIC);
     foreach ($methods as $method) {
         if (!preg_match('#^test[A-Z]#', $method->getName())) {
             continue;
         }
         $data = array();
         $info = Helpers::parseDocComment($method->getDocComment()) + array('dataprovider' => NULL, 'throws' => NULL);
         if ($info['throws'] === '') {
             throw new TestCaseException("Missing class name in @throws annotation for {$method->getName()}().");
         } elseif (is_array($info['throws'])) {
             throw new TestCaseException("Annotation @throws for {$method->getName()}() can be specified only once.");
         } else {
             $throws = preg_split('#\\s+#', $info['throws'], 2) + array(NULL, NULL);
         }
         foreach ((array) $info['dataprovider'] as $provider) {
             $res = $this->getData($provider);
             if (!is_array($res)) {
                 throw new TestCaseException("Data provider {$provider}() doesn't return array.");
             }
             $data = array_merge($data, $res);
         }
         if (!$info['dataprovider']) {
             if ($method->getNumberOfRequiredParameters()) {
                 throw new TestCaseException("Method {$method->getName()}() has arguments, but @dataProvider is missing.");
             }
             $data[] = array();
         }
         foreach ($data as $args) {
             try {
                 if ($info['throws']) {
                     $tmp = $this;
                     $e = Assert::error(function () use($tmp, $method, $args) {
                         $tmp->runTest($method->getName(), $args);
                     }, $throws[0], $throws[1]);
                     if ($e instanceof AssertException) {
                         throw $e;
                     }
                 } else {
                     $this->runTest($method->getName(), $args);
                 }
             } catch (AssertException $e) {
                 $e->message .= " in {$method->getName()}" . substr(Dumper::toLine($args), 5);
                 throw $e;
             }
         }
     }
 }
开发者ID:jakuborava,项目名称:walletapp,代码行数:54,代码来源:TestCase.php

示例9: render

 /**
  * Renders debug bar.
  * @return void
  */
 public function render()
 {
     @session_start();
     // @ session may be already started or it is not possible to start session
     $session =& $_SESSION['__NF']['tracybar-2.3'];
     $redirect = preg_match('#^Location:#im', implode("\n", headers_list()));
     if ($redirect) {
         Dumper::fetchLiveData();
         Dumper::$livePrefix = count($session) . 'p';
     }
     $obLevel = ob_get_level();
     $panels = array();
     foreach ($this->panels as $id => $panel) {
         $idHtml = preg_replace('#[^a-z0-9]+#i', '-', $id);
         try {
             $tab = (string) $panel->getTab();
             $panelHtml = $tab ? (string) $panel->getPanel() : NULL;
             if ($tab && $panel instanceof \Nette\Diagnostics\IBarPanel) {
                 $panelHtml = preg_replace('~(["\'.\\s#])nette-(debug|inner|collapsed|toggle|toggle-collapsed)(["\'\\s])~', '$1tracy-$2$3', $panelHtml);
                 $panelHtml = str_replace('tracy-toggle-collapsed', 'tracy-toggle tracy-collapsed', $panelHtml);
             }
             $panels[] = array('id' => $idHtml, 'tab' => $tab, 'panel' => $panelHtml);
         } catch (\Throwable $e) {
         } catch (\Exception $e) {
         }
         if (isset($e)) {
             $panels[] = array('id' => "error-{$idHtml}", 'tab' => "Error in {$id}", 'panel' => '<h1>Error: ' . $id . '</h1><div class="tracy-inner">' . nl2br(htmlSpecialChars($e, ENT_IGNORE, 'UTF-8')) . '</div>');
             while (ob_get_level() > $obLevel) {
                 // restore ob-level if broken
                 ob_end_clean();
             }
         }
     }
     if ($redirect) {
         $session[] = array('panels' => $panels, 'liveData' => Dumper::fetchLiveData());
         return;
     }
     $liveData = Dumper::fetchLiveData();
     foreach (array_reverse((array) $session) as $reqId => $info) {
         $panels[] = array('tab' => '<span title="Previous request before redirect">previous</span>', 'panel' => NULL, 'previous' => TRUE);
         foreach ($info['panels'] as $panel) {
             $panel['id'] .= '-' . $reqId;
             $panels[] = $panel;
         }
         $liveData += $info['liveData'];
     }
     $session = NULL;
     require __DIR__ . '/assets/Bar/bar.phtml';
 }
开发者ID:kivi8,项目名称:ars-poetica,代码行数:53,代码来源:Bar.php

示例10: dump

 public function dump($subject, $nestLevel = 0)
 {
     $elements = [];
     foreach (get_object_vars($subject) as $key => $value) {
         $elements[] = sprintf("'%s' => %s", $key, $this->masterDumper->dump($value, $nestLevel));
     }
     $methods = get_class_methods($subject);
     $approvedMethods = array_filter($methods, function ($method) use($subject) {
         if (preg_match("/^(get|has|is)[A-Z]/", $method) > 0) {
             $reflection = new \ReflectionMethod(get_class($subject), $method);
             if ($reflection->getNumberOfParameters() === 0) {
                 return true;
             }
             return false;
         }
     });
     foreach ($approvedMethods as $method) {
         $key = lcfirst(preg_replace("/^(get|has|is)/", '', $method));
         $value = call_user_func([$subject, $method]);
         //            $value = $method;
         $elements[] = sprintf("'%s' => %s", $key, $this->masterDumper->dump($value, $nestLevel));
     }
     return "[\n\t" . implode(",\n\t", preg_replace("/\n/", "\n\t", $elements)) . "\n],\n";
 }
开发者ID:pkoltermann,项目名称:vo-debug,代码行数:24,代码来源:ObjectDumper.php

示例11: render

 /**
  * Renders debug bar.
  * @return void
  */
 public function render()
 {
     $useSession = $this->useSession && session_status() === PHP_SESSION_ACTIVE;
     $redirectQueue =& $_SESSION['_tracy']['redirect'];
     foreach (['bar', 'redirect', 'bluescreen'] as $key) {
         $queue =& $_SESSION['_tracy'][$key];
         $queue = array_slice((array) $queue, -10, NULL, TRUE);
         $queue = array_filter($queue, function ($item) {
             return isset($item['time']) && $item['time'] > time() - 60;
         });
     }
     if (!Helpers::isHtmlMode() && !Helpers::isAjax()) {
         return;
     } elseif (Helpers::isAjax()) {
         $rows[] = (object) ['type' => 'ajax', 'panels' => $this->renderPanels('-ajax')];
         $dumps = Dumper::fetchLiveData();
         $contentId = $useSession ? $_SERVER['HTTP_X_TRACY_AJAX'] . '-ajax' : NULL;
     } elseif (preg_match('#^Location:#im', implode("\n", headers_list()))) {
         // redirect
         Dumper::fetchLiveData();
         Dumper::$livePrefix = count($redirectQueue) . 'p';
         $redirectQueue[] = ['panels' => $this->renderPanels('-r' . count($redirectQueue)), 'dumps' => Dumper::fetchLiveData(), 'time' => time()];
         return;
     } else {
         $rows[] = (object) ['type' => 'main', 'panels' => $this->renderPanels()];
         $dumps = Dumper::fetchLiveData();
         foreach (array_reverse((array) $redirectQueue) as $info) {
             $rows[] = (object) ['type' => 'redirect', 'panels' => $info['panels']];
             $dumps += $info['dumps'];
         }
         $redirectQueue = NULL;
         $contentId = $useSession ? substr(md5(uniqid('', TRUE)), 0, 10) : NULL;
     }
     ob_start(function () {
     });
     require __DIR__ . '/assets/Bar/panels.phtml';
     require __DIR__ . '/assets/Bar/bar.phtml';
     $content = Helpers::fixEncoding(ob_get_clean());
     if ($contentId) {
         $_SESSION['_tracy']['bar'][$contentId] = ['content' => $content, 'dumps' => $dumps, 'time' => time()];
     }
     if (Helpers::isHtmlMode()) {
         require __DIR__ . '/assets/Bar/loader.phtml';
     }
 }
开发者ID:assad2012,项目名称:My_CodeIgniter,代码行数:49,代码来源:Bar.php

示例12: dataUri

 /**
  *
  * @param mixed     $source     DataURI source
  * @param boolean   $strict     Use strict mode (length output)
  * @param string    $mime       the mime type
  * @param array     $parameters Extra parameters, see rfc
  * @return null
  */
 public function dataUri($source, $strict = true, $mime = null, $parameters = array())
 {
     $data = null;
     try {
         switch (true) {
             case is_resource($source):
                 $data = $this->getDataFromRessource($source, $strict, $mime, $parameters);
                 break;
             case is_scalar($source):
                 $data = $this->getDataFromScalar($source, $strict, $mime, $parameters);
                 break;
             default:
                 trigger_error("Tried to convert an unsupported source format", E_USER_WARNING);
                 break;
         }
     } catch (Exception\Exception $e) {
         trigger_error(sprintf("Error while building DataUri : %s", $e->getMessage()), E_USER_WARNING);
     }
     if ($data) {
         return Dumper::dump($data);
     }
     return null;
 }
开发者ID:vgrish,项目名称:TwigExtension-DataUri,代码行数:31,代码来源:TwigExtension.php

示例13: file_put_contents

            $a->buildFromDirectory(dirname(__FILE__) . '/' . $backupFolder);
            file_put_contents($backupFolder . '.tar.gz', gzencode(file_get_contents($backupFolder . '.tar'), 9));
            fwrite(STDERR, "Compresion complete!" . PHP_EOL);
            fwrite(STDERR, "Removing temp folders and files.." . PHP_EOL);
            //remove other files
            unlink(realpath($backupFolder . '.tar'));
            deleteDir(realpath($backupFolder));
            fwrite(STDERR, "Temp folders and files removed!" . PHP_EOL);
        }
    } catch (Exception $e) {
        fwrite(STDERR, "{$e}" . PHP_EOL);
    }
    return;
    //exit(1);
} else {
    $dumper = new Dumper($host, $port, $database, $noHistory, $callbackFile, $inlineAttachment, $binaryAttachments, $prettyJsonOutput, $separateFiles, $timeStamp, $callbackFilter);
    $dumper->download();
}
function deleteDir($dirPath)
{
    if (!is_dir($dirPath)) {
        throw new InvalidArgumentException("{$dirPath} must be a directory");
    }
    if (substr($dirPath, strlen($dirPath) - 1, 1) != '/') {
        $dirPath .= '/';
    }
    $files = glob($dirPath . '*', GLOB_MARK);
    foreach ($files as $file) {
        if (is_dir($file)) {
            deleteDir($file);
        } else {
开发者ID:kalda341,项目名称:couchdb-dump-php,代码行数:31,代码来源:couchdb-dump.php

示例14: fopen

<?php

include "../../class.dumper.php";
$fp = fopen(__FILE__, "r");
$a = array('first' => $fp, 'last' => new bar(), 'null_var' => NULL, 'float' => pi(), 'bool' => true, ' leading_space' => 6 * 8, 'trailing_space ' => 'grapes', 'middle space' => 'Mt. Rushmore', 'phones' => array(5036541278, 8714077831, 'x253'), 'long_str' => "This is a really long string full of a\n bunch of crap that should eventually wrap. There once was a man from New Mexico...", 'empty_arr' => array(), 'func_str' => 'preg_replace', 'address' => array('street' => '123 Fake Street', 'city' => 'Portland', 'state' => 'Maine'), 'unixtime' => 1231241234, 'microtime' => microtime(1));
if (isset($_GET['short'])) {
    Dumper::$expand_all = 1;
    kd($a);
}
print "<h2>Dumper capture</h2>\n";
$str = k(array('foo' => 'bar'), KRUMO_CAPTURE);
print $str;
print "<h2>Dumper</h2>\n";
k(array('likes', 'kittens', 'and', 'dogs'));
print "<h2>Dumper passing multiple args</h2>\n";
k('likes', 'kittens', 'and', 'dogs');
print "<h2>Dumper + die()</h2>\n";
kd($a);
print "If you see this something is broken";
$k = new Dumper();
class bar
{
    public $b = 'bb';
    public $a = 'aa';
    function foo()
    {
        return 'bar';
    }
}
开发者ID:forloops,项目名称:dumper,代码行数:29,代码来源:misc.php

示例15: runMethod

 /**
  * Runs the test method.
  * @return void
  */
 private function runMethod($method)
 {
     $method = new \ReflectionMethod($this, $method);
     if (!$method->isPublic()) {
         throw new TestCaseException("Method {$method->getName()} is not public. Make it public or rename it.");
     }
     $data = array();
     $info = Helpers::parseDocComment($method->getDocComment()) + array('dataprovider' => NULL, 'throws' => NULL);
     if ($info['throws'] === '') {
         throw new TestCaseException("Missing class name in @throws annotation for {$method->getName()}().");
     } elseif (is_array($info['throws'])) {
         throw new TestCaseException("Annotation @throws for {$method->getName()}() can be specified only once.");
     } else {
         $throws = preg_split('#\\s+#', $info['throws'], 2) + array(NULL, NULL);
     }
     $defaultParams = array();
     foreach ($method->getParameters() as $param) {
         $defaultParams[$param->getName()] = $param->isDefaultValueAvailable() ? $param->getDefaultValue() : NULL;
     }
     foreach ((array) $info['dataprovider'] as $provider) {
         $res = $this->getData($provider);
         if (!is_array($res)) {
             throw new TestCaseException("Data provider {$provider}() doesn't return array.");
         }
         foreach ($res as $set) {
             $data[] = is_string(key($set)) ? array_merge($defaultParams, $set) : $set;
         }
     }
     if (!$info['dataprovider']) {
         if ($method->getNumberOfRequiredParameters()) {
             throw new TestCaseException("Method {$method->getName()}() has arguments, but @dataProvider is missing.");
         }
         $data[] = array();
     }
     foreach ($data as $args) {
         try {
             if ($info['throws']) {
                 $tmp = $this;
                 $e = Assert::error(function () use($tmp, $method, $args) {
                     $tmp->runTest($method->getName(), $args);
                 }, $throws[0], $throws[1]);
                 if ($e instanceof AssertException) {
                     throw $e;
                 }
             } else {
                 $this->runTest($method->getName(), $args);
             }
         } catch (AssertException $e) {
             throw $e->setMessage("{$e->origMessage} in {$method->getName()}" . substr(Dumper::toLine($args), 5));
         }
     }
 }
开发者ID:jave007,项目名称:test,代码行数:56,代码来源:TestCase.php


注:本文中的Dumper类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。