" dalam "app.php", dan tetapkan nilai item pada masa yang diperlukan pengecam zon, contohnya " Asia/Shanghai" atau "PRC"; 2. Tukar zon waktu secara manual semasa program dijalankan dan gunakan kelas "Carbon" untuk melaksanakan kaedah "setTimezone()" untuk menukar zon waktu; 3. Tetapkan zon waktu untuk model dan tetapkan atribut "$timezone" untuk menentukan zon waktu ."/> " dalam "app.php", dan tetapkan nilai item pada masa yang diperlukan pengecam zon, contohnya " Asia/Shanghai" atau "PRC"; 2. Tukar zon waktu secara manual semasa program dijalankan dan gunakan kelas "Carbon" untuk melaksanakan kaedah "setTimezone()" untuk menukar zon waktu; 3. Tetapkan zon waktu untuk model dan tetapkan atribut "$timezone" untuk menentukan zon waktu .">

Rumah >masalah biasa >Bagaimana untuk menetapkan zon waktu dalam laravel

Bagaimana untuk menetapkan zon waktu dalam laravel

小老鼠
小老鼠asal
2023-05-10 15:29:413268semak imbas

Cara untuk menetapkan zon waktu dalam laravel: 1. Buka fail "config/app.php", cari item "'timezone' =>" dalam "app.php", dan tetapkan nilai item ini kepada pengecam zon waktu yang diperlukan, seperti "Asia/Shanghai" atau "PRC" 2. Tukar zon waktu secara manual semasa program dijalankan, gunakan kelas "Carbon" untuk melaksanakan kaedah "setTimezone()" untuk tukar zon waktu; 3. Tetapkan zon waktu untuk model, tetapkan Atribut "$timezone" menentukan zon waktu.

Bagaimana untuk menetapkan zon waktu dalam laravel

Sistem pengendalian untuk tutorial ini: Sistem Windows 10, komputer Dell G3.

Laravel ialah rangka kerja web berasaskan PHP yang biasa digunakan untuk mencipta dan menyelenggara aplikasi web berskala besar. Zon waktu ialah isu kritikal untuk pembangunan aplikasi web, dan Laravel menyediakan cara mudah untuk mengurusnya. Dalam artikel ini, kami akan menerangkan cara menukar zon waktu dalam Laravel.

Konfigurasi zon waktu Laravel

Konfigurasi zon waktu dalam Laravel terletak dalam fail config/app.php. Nilai lalai ialah zon waktu UTC (Coordinated Universal Time) Anda boleh menukar zon waktu seperti berikut:

'timezone' => 'Asia/Shanghai',

Anda boleh menggantikan 'Asia/Shanghai' dengan zon waktu yang anda perlukan (contohnya, Waktu Timur AS. ialah 'America/ New_York').

Tukar zon waktu secara manual

Jika anda perlu menukar zon waktu secara dinamik semasa aplikasi sedang berjalan, anda boleh menggunakan kelas Carbon untuk mencapainya. Kaedah setTimezone() kelas Karbon membolehkan anda menukar zon waktu pada masa jalan. Contohnya:

$date = Carbon::now()->setTimezone('America/New_York');

Kod di atas akan menukar masa semasa kepada Waktu Timur.

Zon Masa Tahap Permintaan

Dalam Laravel, anda juga boleh menetapkan zon waktu yang berbeza untuk setiap permintaan. Secara lalai, Laravel menggunakan zon waktu aplikasi. Walau bagaimanapun, zon waktu boleh ditukar pada setiap permintaan jika anda menggunakan kaedah setLocale() dalam middleware. Contohnya:

public function handle($request, Closure $next)
{
    app()->setLocale('en');
 
    return $next($request);
}

Kod di atas akan menukar zon waktu kepada waktu London, UK.

Tetapkan zon waktu untuk model

Akhir sekali, anda juga boleh menetapkan zon waktu untuk model. Dalam kelas model, gunakan atribut $dateFormat untuk menetapkan format tarikh dan tetapkan atribut $timezone untuk menentukan zon waktu. Contohnya:

class User extends Model
{
    /**
     * The attributes that should be mutated to dates.
     *
     * @var array
     */
    protected $dates = [
        'created_at',
        'updated_at',
    ];
 
    /**
     * The attributes that should be cast to native types.
     *
     * @var array
     */
    protected $casts = [
        'id' => 'integer',
    ];
 
    /**
     * The attributes that should be mutated to date.
     *
     * @var string
     */
    protected $dateFormat = 'Y-m-d H:i:s';
 
    /**
     * The attributes that should be mutated to timezone.
     *
     * @var string
     */
    protected $timezone = 'Asia/Shanghai';
}

Kod di atas akan menggunakan zon waktu Asia/Shanghai untuk menghuraikan atribut create_at dan updated_at.

Ringkasan

Zon masa ialah isu kritikal untuk aplikasi web dan Laravel menyediakan berbilang kaedah untuk mengurus zon waktu. Anda boleh menukar zon waktu dengan mengubah suai fail konfigurasi, menggunakan kelas Karbon, tahap permintaan atau tahap model. Walau bagaimanapun, ambil perhatian bahawa apabila menggunakan zon waktu dinamik, pastikan anda memformat tarikh dan masa dengan betul dalam kod anda untuk mengelakkan ralat penghuraian disebabkan zon waktu yang berbeza.

Atas ialah kandungan terperinci Bagaimana untuk menetapkan zon waktu dalam laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn