PHP全局使用Laravel辅助函数dd


Posted in PHP onDecember 26, 2019

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()

以上就是本次介绍的全部相关知识点,感谢大家的学习和对三水点靠木的支持。

PHP 相关文章推荐
php上传、管理照片示例
Oct 09 PHP
PHP 5.0对象模型深度探索之类的静态成员
Mar 27 PHP
php 引用(&)详解
Nov 20 PHP
php strrpos()与strripos()函数
Aug 31 PHP
PHP防范SQL注入的具体方法详解(测试通过)
May 09 PHP
ThinkPHP3.1新特性之Action参数绑定
Jun 19 PHP
php实现对象克隆的方法
Jun 20 PHP
Zend Framework缓存Cache用法简单实例
Mar 19 PHP
php短信接口代码
May 13 PHP
PHP简单读取xml文件的方法示例
Apr 20 PHP
Laravel5.1框架路由分组用法实例分析
Jan 04 PHP
PHP xpath提取网页数据内容代码解析
Jul 16 PHP
解决php用mysql方式连接数据库出现Deprecated报错问题
Dec 25 #PHP
PHP高并发和大流量解决方案整理
Dec 24 #PHP
thinkphp5实现微信扫码支付
Dec 23 #PHP
PHP实现笛卡尔积算法的实例讲解
Dec 22 #PHP
PHP架构及原理知识点详解
Dec 22 #PHP
Laravel 验证码认证学习记录小结
Dec 20 #PHP
php文件上传原理与实现方法详解
Dec 20 #PHP
You might like
discuz安全提问算法
2007/06/06 PHP
PHP实现数组array转换成xml的方法
2016/07/19 PHP
JavaScript中的排序算法代码
2011/02/22 Javascript
再谈javascript面向对象编程
2012/03/18 Javascript
JS性能优化笔记搜索整理
2013/08/21 Javascript
js控制分页打印、打印分页示例
2014/02/08 Javascript
JS+CSS模拟可以无刷新显示内容的留言板实例
2015/03/03 Javascript
jQuery实现简单的列表式导航菜单效果代码
2015/08/31 Javascript
ECharts仪表盘实例代码(附源码下载)
2016/02/18 Javascript
js数组实现权重概率分配
2017/09/12 Javascript
vue的token刷新处理的方法
2018/07/17 Javascript
vue-calendar-component 封装多日期选择组件的实例代码
2020/12/04 Vue.js
[43:03]LGD vs Newbee 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
提升Python程序运行效率的6个方法
2015/03/31 Python
使用Python编写简单的画图板程序的示例教程
2015/12/08 Python
Python中Scrapy爬虫图片处理详解
2017/11/29 Python
基于Python中numpy数组的合并实例讲解
2018/04/04 Python
Python设计模式之简单工厂模式实例详解
2019/01/22 Python
使用TensorFlow实现二分类的方法示例
2019/02/05 Python
Python for循环与range函数的使用详解
2019/03/23 Python
Django网络框架之创建虚拟开发环境操作示例
2019/06/06 Python
python Gunicorn服务器使用方法详解
2019/07/22 Python
Python使用多进程运行含有任意个参数的函数
2020/05/02 Python
VSCode配合pipenv搞定虚拟环境的实现方法
2020/05/17 Python
python包的导入方式总结
2021/03/02 Python
惠普加拿大在线商店:HP加拿大
2017/09/15 全球购物
路由表示做什么用的?在linux环境中怎么来配置一条默认路由?
2013/06/07 面试题
C#里面如何倒序排列一个数组的元素?
2013/06/21 面试题
日期和时间问题
2015/01/04 面试题
Servlet的实例是在生命周期什么时候创建的?配置servlet最重要的是什么?
2012/05/30 面试题
购房公证委托书(2014版)
2014/09/12 职场文书
《作风建设永远在路上》心得体会
2016/01/21 职场文书
《秋天的怀念》教学反思
2016/02/17 职场文书
Python - 10行代码集2000张美女图
2021/05/23 Python
pytorch 实现多个Dataloader同时训练
2021/05/29 Python
mysql数据库如何转移到oracle
2022/12/24 MySQL