Laravel 5.7 新特性之引入 Laravel Dump Server 扩展包方便本地开发代码调试

栏目: 编程语言 · PHP · 发布时间: 5年前

内容简介:在 Laracon US 2018 大会上 Taylor Otwell 宣布会在 Laravel 5.7 中引入这样,你就可以在 Laravel 5.7 应用中开箱使用以下 Artisan 命令将打印数据输出到控制台或者 HTML 文件,而不必打开浏览器:以上命令会在后台启动 Web 服务器,并监听

在 Laracon US 2018 大会上 Taylor Otwell 宣布会在 Laravel 5.7 中引入 Laravel Dump Server 扩展包(该扩展包将 Symfony 的 Var-Dump Server 引入 Laravel,用于在开发环境收集 dump() 函数输出,并将其打印到控制台或导出到文件),作为开发环境依赖放到 composer.json 文件的 require-dev 配置项中:

"require-dev": {
    "beyondcode/laravel-dump-server": "~1.0",
    "filp/whoops": "^2.0",
    "fzaninotto/faker": "^1.4",
    "mockery/mockery": "^1.0",
    "nunomaduro/collision": "^2.0",
    "phpunit/phpunit": "^7.0"
},

这样,你就可以在 Laravel 5.7 应用中开箱使用以下 Artisan 命令将打印数据输出到控制台或者 HTML 文件,而不必打开浏览器:

php artisan dump-server

# Or send the output to an HTML file
php artisan dump-server --format=html > dump.html

以上命令会在后台启动 Web 服务器,并监听 dump() 函数,然后将输出发送到控制台/导出到文件。如果没有在控制台运行上述命令,那么 dump() 函数还是按照默认的方式执行,不会受到影响。

Laravel 会持续将一些有用的第三方扩展包引入官方发行版本,例如在 Laravel 5.6 中引入了 nunomaduro/collision ,在 Laravel 5.5 中引入了 fideloper/proxy

如果你想在 Laravel 5.6 及以下版本中使用 Laravel Dump Server,需要通过 Composer 安装这个扩展包:

composer require --dev beyondcode/laravel-dump-server

如果希望对其进行自定义配置,可以将其配置文件发布到 config 目录下:

php artisan vendor:publish --provider=BeyondCode\\DumpServer\\DumpServerServiceProvider

该命令会在 config 下新增一个 debug-server.php 配置文件。你可以在该配置文件中配置想要监听的服务器 IP 及端口号,如果是通过 Laradock 作为本地开发环境,需要将 IP 地址替换为 workspace 的容器名方可正常使用。

该扩展包的使用也非常简单,我们在应用的 routes/api.php 文件中定义一个 API 路由:

Route::get('/test', function (Request $request) {
    dump($request->all());
    return [
        'name' => $request->get('name') ? : '学院君',
        'site' => $request->get('site') ? : 'Laravel学院',
    ];
});

如果没有启用 php artisan dump-server 命令,访问 http://dump-server.test/api/test?name=学院君&site=Laravel学院 的话页面显示如下:

Laravel 5.7 新特性之引入 Laravel Dump Server 扩展包方便本地开发代码调试

下面在项目根目录下运行该命令,再次访问上面的 URL 链接,会看到 dump() 输出打印到了控制台:

Laravel 5.7 新特性之引入 Laravel Dump Server 扩展包方便本地开发代码调试

同时浏览器中也不再显示 dump() 输出,而是将返回数组以 JSON 格式输出:

Laravel 5.7 新特性之引入 Laravel Dump Server 扩展包方便本地开发代码调试

通过该扩展包,我们可以在任意想要调试代码的地方调用 dump() 函数打印数据,而不会影响原本的代码执行,从而极大提高本地开发调试效率。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

深入浅出Rust

深入浅出Rust

范长春 / 机械工业出版社 / 2018-8-21 / 89.00元

本书详细描述了Rust语言的基本语法,穿插讲解一部分高级使用技巧,并以更容易理解的方式解释其背后的设计思想。全书总共分五个部分。 第一部分介绍Rust基本语法,因为对任何程序设计语言来说,语法都是基础,学习这部分是理解其他部分的前提。 第二部分介绍属于Rust独一无二的内存管理方式。它设计了一组全新的机制,既保证了安全性,又保持了强大的内存布局控制力,而且没有额外性能损失。这部分是本书......一起来看看 《深入浅出Rust》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

MD5 加密
MD5 加密

MD5 加密工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换