iantoo/laravel-greeting-package

Laravel Greeting 包是一个轻量级、可定制的包,根据一天中的时间提供个性化的问候信息。

v1.0.2 2024-08-14 05:45 UTC

This package is auto-updated.

Last update: 2024-09-14 06:44:45 UTC


README

描述

Laravel Greeting 包是一个轻量级、可定制的包,根据一天中的时间提供个性化的问候信息。它自动检测当前时间,并使用英语或斯瓦希里语提供适当的问候。如果用户已登录,问候将使用他们的名字或电子邮件进行个性化。

功能

  1. 基于时间的问候
  2. 用户个性化
  3. 多语言支持
  4. Artisan 命令
  5. 易于集成

用例

  • 在仪表板或欢迎页面上显示个性化的问候
  • 通过承认一天中的时间来增强用户体验
  • 支持多语言应用

安装

  1. 安装包

    • 使用 Composer 将包添加到您的 Laravel 项目中

      composer require iantoo/greeting-package
    • 如果您在本地开发包,请将其包含在您的 composer.json 文件中的 repositories 部分

      "repositories": [
          {
              "type": "path",
              "url": "../path-to-your-package"
          }
      ],
      "require": {
          "iantoo/greeting-package": "*"
      }
    • 然后运行

      composer update

配置

  1. 发布配置(可选)

    • 将包的配置文件发布到应用程序的 config 目录

      php artisan vendor:publish --tag=config
  2. 发布语言文件(可选)

    • 将包的语言文件发布到应用程序的 resources/lang 目录

      php artisan vendor:publish --tag=lang
  3. 设置应用程序区域设置(可选)

    • 要使用斯瓦希里语进行问候,请在您的 .env 文件或 config/app.php 中将应用程序的区域设置设置为 sw

      'locale' => 'sw',

用法

  1. 在视图中显示问候

    • 使用 Greeting::greet() 方法在任意 Blade 视图中显示问候信息

      {{ \Iantoo\GreetingPackage\Greeting::greet() }}
  2. 通过 Artisan 命令测试问候

    • 运行自定义 Artisan 命令以测试问候输出
      php artisan greet:user
    • 该命令将在控制台输出基于当前时间和登录用户状态的问候信息。

示例用法:问候

在控制器中

namespace App\Http\Controllers;

use Iantoo\GreetingPackage\Greeting;

class DashboardController extends Controller
{
    public function index()
    {
        $greeting = Greeting::greet();

        return view('dashboard', compact('greeting'));
    }
}

在 Blade 视图中

<!-- resources/views/dashboard.blade.php -->
<h1>{{ $greeting }}</h1>

示例用法:当前日期

要使用 Laravel Greeting 包的 currentDate() 方法显示当前日期,请按照以下步骤操作

用法示例

1. 在 Blade 视图中使用

如果您想在 Blade 视图中显示当前日期,可以直接在视图中调用 currentDate() 方法。

<!-- resources/views/welcome.blade.php -->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Welcome</title>
</head>
<body>
    <h1>Welcome to Our Application</h1>
    <p>Today is {{ \Iantoo\GreetingPackage\Greeting::currentDate() }}</p>
</body>
</html>

输出

Today is Monday, January 1, 2024

2. 在控制器中使用

您也可以在控制器中使用 currentDate() 方法,并将结果传递到视图中。

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Iantoo\GreetingPackage\Greeting;

class HomeController extends Controller
{
    public function index()
    {
        $currentDate = Greeting::currentDate();

        return view('home', compact('currentDate'));
    }
}

在您的 Blade 视图中

<!-- resources/views/home.blade.php -->
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Home</title>
</head>
<body>
    <h1>Welcome to Our Application</h1>
    <p>Today is {{ $currentDate }}</p>
</body>
</html>

3. 在 Artisan 命令中使用

如果您需要在自定义 Artisan 命令中使用 currentDate() 方法,它可以轻松集成。

namespace App\Console\Commands;

use Illuminate\Console\Command;
use Iantoo\GreetingPackage\Greeting;

class ShowCurrentDate extends Command
{
    protected $signature = 'date:show';
    protected $description = 'Display the current date';

    public function handle()
    {
        $this->info('Today is ' . Greeting::currentDate());
    }
}

要运行该命令

php artisan date:show

输出

Today is Monday, January 1, 2024

结论

通过在 Blade 视图、控制器或自定义 Artisan 命令中使用 currentDate() 方法,您可以在 Laravel 应用程序中以格式化的方式(包括星期、月份、数字日期和年份)轻松显示当前日期。此方法灵活,可以用于需要显示日期的任何地方。

高级用法

  1. 自定义问候

    • 修改已发布的配置或语言文件以自定义问候信息。
  2. 添加更多语言

    • resources/lang 目录下添加新的语言文件,以支持附加语言。

部署

  • 按照常规部署您的 Laravel 应用程序。该软件包将根据用户的语言偏好和一天中的时间自动生成适当的问候消息。