Heim >PHP-Framework >Laravel >Lassen Sie uns darüber sprechen, wie Sie dem Befehl „Info' in Laravel nützliche Informationen hinzufügen

Lassen Sie uns darüber sprechen, wie Sie dem Befehl „Info' in Laravel nützliche Informationen hinzufügen

青灯夜游
青灯夜游nach vorne
2023-01-17 20:21:011914Durchsuche

Wie füge ich Informationen zum Befehl „Info“ hinzu? Der folgende Artikel stellt vor, wie man dem Laravel-Info-Befehl nützliche Informationen hinzufügt. Ich hoffe, dass er für alle hilfreich ist!

Lassen Sie uns darüber sprechen, wie Sie dem Befehl „Info' in Laravel nützliche Informationen hinzufügen

Der in Laravel 9.21 veröffentlichte Laravel-Befehl about bietet einen hervorragenden Überblick über die wichtige Konfiguration Ihrer Anwendung. Im Auslieferungszustand werden Umgebungsdetails, Treiber-Cache-Status und Konfiguration aufgelistet: 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() =>

Eine weitere nette Funktion des neuen about-Befehls ist, dass Pakete auch nützliche Informationen hinzufügen können. Beispielsweise haben wir die Filament-Komponente

nach der Veröffentlichung von Laravel 9.21 eingeführt, berichtete Ryan Chandler gegenüber Filament Initiated eine Pull-Anfrage, um nützliche Plugin-Details hinzuzufügen.

Ich denke, wir werden sehen, dass viele Autoren von Erweiterungspaketen dem Befehl about einige nützliche Details hinzufügen. Letztendlich besteht jedoch die Hoffnung, dass Benutzer nicht mit zu vielen Informationen überhäuft werden, oder dass Entwickler von Erweiterungspaketen möglicherweise konfigurierbare Daten in den Befehl „about“ aufnehmen. 🎜🎜Nach Abschluss der Einführung stellt sich die Frage, wie Sie dem Befehl „about“ benutzerdefinierte Daten hinzufügen können. 🎜🎜Sie können dies mit AboutCommand::add() in der Methode boot() des Dienstanbieters tun. 🎜🎜Nehmen wir im folgenden Beispiel an, ich möchte, dass mein Paket oder meine Anwendung einen bestimmten XDebug-Konfigurationswert ausgibt: 🎜
'Client Port' => ini_get('xdebug.client_port'), 
'Client Port' => fn() => ini_get('xdebug.client_port'),
🎜Abhängig von Ihrer XDebug-Konfiguration könnte das Obige lokal so aussehen: 🎜🎜🎜

Lazy Loading

🎜Eine Sache, die Sie beim Erstellen eines benutzerdefinierten Befehlsdings beachten sollten Das heißt, Sie sollten die Ausgabe verzögert laden, indem Sie Ihre Einstellungen in eine fn() => Pfeilfunktion (anonym) einschließen. Zum Beispiel: 🎜
原文地址:https://laravel-news.com/customize-laravel-about-command
译文地址:https://learnku.com/laravel/t/70189
🎜Ich freue mich, dass der Autor des Erweiterungspakets diesem Befehl einige nützliche Informationen hinzufügen wird! 🎜rrreee🎜Weitere Programmierkenntnisse finden Sie unter: 🎜Programmiervideo🎜! ! 🎜

Das obige ist der detaillierte Inhalt vonLassen Sie uns darüber sprechen, wie Sie dem Befehl „Info' in Laravel nützliche Informationen hinzufügen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:learnku.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen