PHP全局使用Laravel辅助函数dd

yipeiwu_com6年前PHP代码库

dump() 方法

全局 composer.json

"require": {
  "squizlabs/php_codesniffer": "*",
  "fxp/composer-asset-plugin": "^1.4",
  "symfony/var-dumper": "3.3.16"
}

配置PHP.ini

auto_prepend_file = "C:UsersMSAppDataRoamingComposervendorautoload.php"

更新Composer

composer global update

更新后重启apache就可以全局使用函数 dump()

dd() 方法

全局 composer.json

# 新增 autoload
"autoload": {
  "files": [
    "D:/web/php/debugHelper.php"
  ]
}

新建 debugHelper.php

# install symfony/var-dump to your project
# composer require symfony/var-dumper

// use namespace
use ComponentVarDumperClonerVarCloner;
use ComponentVarDumperDumperCliDumper;
use ComponentVarDumperDumperHtmlDumper as SymfonyHtmlDumper;

/**
 * Class HtmlDumper
 */
class HtmlDumper extends SymfonyHtmlDumper
{
  /**
大专栏 PHP 全局使用 Laravel 辅助函数 ddnt">   * Colour definitions for output.
   *
   * @var array
   */
  protected $styles = [
    'default' => 'background-color:#fff; color:#222; line-height:1.2em; font-weight:normal; font:12px Monaco, Consolas, monospace; word-wrap: break-word; white-space: pre-wrap; position:relative; z-index:100000',
    'num' => 'color:#a71d5d',
    'const' => 'color:#795da3',
    'str' => 'color:#df5000',
    'cchr' => 'color:#222',
    'note' => 'color:#a71d5d',
    'ref' => 'color:#a0a0a0',
    'public' => 'color:#795da3',
    'protected' => 'color:#795da3',
    'private' => 'color:#795da3',
    'meta' => 'color:#b729d9',
    'key' => 'color:#df5000',
    'index' => 'color:#a71d5d',
  ];
}

/**
 * Class Dumper
 */
class Dumper
{
  /**
   * Dump a value with elegance.
   *
   * @param mixed $value
   * @return void
   */
  public function dump($value)
  {
    if (class_exists(CliDumper::class)) {
      $dumper = 'cli' === PHP_SAPI ? new CliDumper : new HtmlDumper;
      $dumper->dump((new VarCloner)->cloneVar($value));
    } else {
      var_dump($value);
    }
  }
}

if (! function_exists('dd')) {
  /**
   * Dump the passed variables and end the script.
   *
   * @param mixed
   * @return void
   */
  function dd(...$args)
  {
    foreach ($args as $x) {
      (new Dumper)->dump($x);
    }
    die(1);
  }
}

if (! function_exists('dda')) {
  /**
   * Dump the passed array variables and end the script.
   *
   * @param mixed
   * @return void
   */
  function dda(...$args)
  {
    foreach ($args as $x) {
      (new Dumper)->dump($x->toArray());
    }
    die(1);
  }
}

更新composer自动加载

composer global dump-autoload

更新后就可以全局使用函数 dd()

以上就是本次介绍的全部相关知识点,感谢大家的学习和对【宜配屋www.yipeiwu.com】的支持。

相关文章

PHP JSON格式的中文显示问题解决方法

返回json数据中文显示的问题 上一篇文章中,返回json格式的中文显示成\u5723\u8bde\u8282\u5343\u4e07\u597d\u793c\u5927\u5949\u...

PHP/HTML混写的四种方式总结

PHP/HTML混写的四种方式总结

PHP作为一款后端语言,为了输出给浏览器让浏览器呈现出来,无可避免的要输出HTML代码,下文介绍下我用过的三种PHP/HTML混编方法 1、单/双引号包围法 这是最初级的方法了,用法就像...

php+ajax无刷新上传图片实例代码

php+ajax无刷新上传图片实例代码

本文分享了php结合ajax实现无刷新上传图片的实例代码,分享给大家,希望大家可以和小编一起学习学习,共同进步。 1.引入文件 <!--图片上传begin--> <...

ECSHOP完美解决Deprecated: preg_replace()报错的问题

随着PHP5.5 的普及,ECSHOP系统又爆出了新的错误。PHP发展到PHP5.5版本以后,有了很多细微的变化。而ECSHOP官方更新又太慢,发现这些问题后也不及时升级,导致用户安装使...

php 全局变量范围分析

复制代码 代码如下: <?php $a = 1 ; include 'b.inc' ; ?> 这里变量 $a 将会在包含文件 b.inc 中生效。但是,在用户自定义函数中,...