iroid / laravel-timezone
该包最新版本(1.0.0)没有可用的许可证信息。
“用于转换或获取本地时区的日期时间的包”
1.0.0
2024-07-31 07:33 UTC
README
Laravel LocalTimezone 是一个包,使用 Laravel 的 Carbon 库和 Moment.js 帮助管理用户的本地时区。
安装
您可以通过 Composer 安装此包。在您的终端中运行以下命令:
composer require iroid/laravel-timezone
在您的 blade 模板中包含视图文件
@include('localtimezone::script')
服务提供者配置
在 AppServiceProvider 或 Providers.php 中添加以下行:
Iroid\LocalTimezone\LocalTimezoneServiceProvider::class,
中间件配置
将 SetLocale 中间件添加到您的 web 中间件组中,在 app/Http/Kernel.php 中
protected $middlewareGroups = [ 'web' => [ \Iroid\LocalTimezone\Http\Middleware\SetLocale::class, // other middlewares... ], ];
或者对于 Laravel 11 及更高版本,在 app/bootstrap/app.php 中添加:
->withMiddleware(function (Middleware $middleware) { $middleware->web( [ .... \Iroid\LocalTimezone\Http\Middleware\SetLocale::class, ] ); })
转换为本地时间
use Iroid\LocalTimezone\LocalTimezone; $originalTimestamp = '2024-07-24 12:00:00'; $localTime = LocalTimezone::convertToLocalTime($originalTimestamp); echo $localTime; // Outputs the timestamp in the user's local timezone
您还可以指定输出格式的自定义格式
$customFormattedLocalTime = LocalTimezone::convertToLocalTime($originalTimestamp, 'l, F j, Y g:i A'); echo $customFormattedLocalTime; // Outputs the timestamp in the custom format