这篇“Laravel中如何向About命令添加有用的信息”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Laravel中如何向About命令添加有用的信息”文章吧。
Laravel 9.21 中发布的 Laravel about
命令为应用程序的重要配置提供了出色的概览。 它开箱即用,列出了环境详细信息、驱动程序的缓存状态和配置:
新的 about 命令的另一个巧妙功能是软件包也可以添加有用的信息。例如,我们在 Laravel 新闻中介绍了 Filament 组件; 在 Laravel 9.21 发布后,Ryan Chandler 向 Filament 发起了一个 pull request to add useful plugin details。
我想我们会看到很多扩展包的作者在 about
命令中添加一些有用的细节。但最终希望用户不会被太多信息所淹没,或者扩展包开发人员可能会在 about 命令中包含可配置的数据。
介绍完之后,应该如何将将自定义数据添加到“about”命令中?
你可以在服务提供者的 boot()
方法中使用 AboutCommand::add()
来执行此操作。
在以下示例中,假设我希望我的包或应用程序输出特定的 XDebug 配置值:
use Illuminate\Foundation\Console\AboutCommand;// ...public function boot(){ AboutCommand::add('XDebug Settings', [ 'Client Port' => fn() => ini_get('xdebug.client_port'), 'Client Host' => fn() => ini_get('xdebug.client_host'), 'Start With Request' => fn() => ini_get('xdebug.start_with_request'), 'Max Nesting Level' => fn() => ini_get('xdebug.max_nesting_level'), 'Mode' => fn() => ini_get('xdebug.mode'), 'Output Dir' => fn() => ini_get('xdebug.output_dir'), 'Log' => fn() => !empty(ini_get('xdebug.log')) ? ini_get('xdebug.log') : 'No Value', ]);}
根据你的 XDebug 配置,以上内容在本地可能如下所示:
懒加载
创建自定义命令时要注意的一件事是,您应该通过将设置包装在fn() =>
箭头(匿名)函数中来延迟加载输出。 例如:
'Client Port' => ini_get('xdebug.client_port'), 'Client Port' => fn() => ini_get('xdebug.client_port'),
以上就是关于“Laravel中如何向About命令添加有用的信息”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网行业资讯频道。