Uso del carbonio Laravel

Uso del carbonio Laravel
La maggior parte delle applicazioni Web richiede di lavorare con data e ora. L'applicazione Web sviluppata da Laravel Framework utilizza una semplice estensione API per lavorare con la data e l'ora chiamata Carbonio. Questo pacchetto PHP può gestire il tempo e il fuso orario più facilmente nel progetto Laravel. IL Carbonio Il pacchetto può essere utilizzato per molti scopi, come leggere la data e l'ora correnti, modificando il formato di data e ora predefiniti, trovando la differenza tra due date, convertendo la data e l'ora da un fuso orario a un altro fuso orario, ecc. Diversi usi di Carbonio Nel progetto Laravel è stato mostrato in questo tutorial.

Prerequisiti:

Devi completare i seguenti compiti prima di praticare gli esempi di questo tutorial.

Crea un nuovo progetto Laravel chiamato TimeProject. Qui, il compositore è stato utilizzato per creare il progetto Laravel. Se la compositore non è installato prima di allora, è necessario installarlo prima di eseguire il seguente comando.

$ composir crea-project Laravel/Laravel TimeProject

Vai alla cartella del progetto.

$ cd timeproject

Tutti gli esempi di questo tutorial sono stati testati nella versione 9+. Controlla la versione installata di Laravel.

$ php artisan -version

Crea un controller:

Esegui il comando seguente per creare un controller per verificare gli usi del pacchetto di carbonio. Dopo aver eseguito il comando, DateTimeController.Il file PHP verrà creato all'interno della cartella APP/HTTP/Controller.

$ PHP Artisan Make: Controller DateTimeController

Diversi usi del carbonio:

Gli usi di Carbonio per scopi diversi sono stati mostrati in questa parte del tutorial modificando il DateTimeController.PHP file.

Esempio-1: leggi la data e l'ora correnti

L'uso più semplice della classe di carbonio è leggere la data e l'ora correnti. Apri il DateTimeController.PHP file e sostituire il contenuto con il seguente script. IL Ora() funzione di Carbonio La classe è stata utilizzata nello script per leggere la data e l'ora correnti.

APPPACE NAME \ HTTP \ Controller;
Usa Illuminate \ http \ richiesta;
Usa carbonio \ carbon;
Classe DateTimeController estende il controller

indice della funzione pubblica ()

// Leggi la data e l'ora correnti
$ current_datetime = carbon :: ora ();
// Stampa la data e l'ora correnti
echo "La data e l'ora correnti sono $ current_datetime";

Apri il ragnatela.PHP file da itinerari cartella, aggiungere le seguenti righe per aggiungere le informazioni del controller ed eseguire il indice() funzione del controller per l'URL della radice.

Usa app \ http \ controller \ DateTimeController;
Route :: get ('/', [DateTimeController :: Class, 'Index']);

Esegui il seguente comando per avviare il server di sviluppo di Laravel se non viene avviato prima.

$ PHP Artisan Serve

Esegui il seguente URL dal browser Controllare l'output di questo esempio.

http: // 127.0.0.1: 8000/

Il seguente output simile apparirà in base alla data e all'ora del sistema.

Esempio 2: formatta la data e l'ora correnti

Sostituisci la funzione indice () del DateTimeController con il seguente script per sapere come formattare la data e l'ora correnti. Nel seguente script sono stati mostrati tre diversi tipi di formattazione. Il valore della data verrà stampato con il formato dd-mm-yy nel primo output. Il valore della data verrà stampato con il nome del mese intero e il valore dell'anno nel secondo output. Il valore temporale verrà stampato con il formato HH: MM: SS nel terzo output.

indice della funzione pubblica ()

// Leggi la data e l'ora correnti
$ dateTime = carbon :: now ()-> todateTimestring ();
// formatta la data per ottenere solo la data
$ cur_date = carbon :: createFromFormat ('y-m-d h: i: s', $ datetime)-> formato ('d-m-y');
// Stampa la data corrente
echo "La data corrente è $ cur_date
";
// formatta la data per ottenere la data in un altro modo
$ cur_date2 = carbon :: createfromformat ('y-m-d h: i: s', $ datetime)-> formato ('d f y');
// Stampa la data corrente
Echo "La data corrente in un altro formato è $ cur_date2
";
// formatta la data per avere solo il tempo
$ cur_time = carbon :: createFromFormat ('y-m-d h: i: s', $ datetime)-> formato ('h: i: s');
// Stampa l'ora corrente
echo "L'ora corrente è $ cur_time";

Il seguente output simile verrà visualizzato in base alla data e all'ora corrente dopo l'esecuzione dello script sopra.

Esempio-3: stampare la data corrente, precedente e successiva

Sostituisci il indice() funzione di DateTimeController con il seguente script per sapere come stampare la data corrente, la data in arrivo, la data precedente.

indice della funzione pubblica ()

$ ora = carbon :: ora ()-> todateString ();
$ formmatted = carbon :: createFromFormat ('y-m-d', $ ora)-> formato ('f j, y');
eco "Oggi: $ formmatt
";
$ NextDay = Carbon :: Tomorrow ()-> toDateString ();
$ formmatted = carbon :: createFromFormat ('y-m-d', $ neutday)-> formato ('f j, y');
eco "Domani: $ formmatt
";
$ prevday = carbon :: ieri ()-> todateString ();
$ formmatted = carbon :: createFromFormat ('y-m-d', $ prevday)-> formato ('f j, y');
eco "Ieri: $ formmatt
";

Il seguente output simile verrà visualizzato in base alla data e all'ora corrente dopo l'esecuzione dello script sopra.

Esempio-4: trova la differenza tra le date in giorni, mesi e anni

Sostituisci il indice() funzione di DateTimeController con la seguente sceneggiatura per sapere il modo di calcolare la differenza tra due date in giorni, mesi e anni.

indice della funzione pubblica ()

// Imposta la data di inizio
$ start_date = carbon :: createFromFormat ('y-m-d', '2022-03-15');
// Imposta la data di fine
$ end_date = carbon :: createFromFormat ('y-m-d', '2024-03-15');
// conta la differenza in giorni
$ count_days = $ start_date-> diffindays ($ end_date);
// Stampa il valore di conteggio
echo "La differenza tra due date è $ count_days giorni
";
// conta la differenza tra mesi
$ count_months = $ start_date-> diffinmonths ($ end_date);
// Stampa il valore di conteggio
Echo "La differenza tra due date è $ count_months mesi
";
// conta la differenza da anni
$ count_years = $ start_date-> diffinyears ($ end_date);
// Stampa il valore di conteggio
echo "La differenza tra due date è $ count_years anni";

Verrà visualizzato il seguente output dopo aver eseguito lo script sopra.

Esempio-5: impostare il fuso orario predefinito

Un altro uso importante della classe di carbonio è impostare il fuso orario. Sostituisci il indice() funzione di DateTimeController con il seguente script per impostare due fulmine diversi e controllare le differenze di tempo tra gli zone di tempori.

indice della funzione pubblica ()

// Imposta il fuso orario predefinito
date_default_timezone_set ('America/los_angeles');
$ dateTime = carbon :: now ()-> todateTimestring ();
$ date = carbon :: createfromFormat ('y-m-d h: i: s', $ datetime)-> formato ('d/m/y h: i: s');
Echo $ date "
";
// Modifica il fuso orario predefinito
date_default_timezone_set ('Asia/dhaka');
$ dateTime = carbon :: now ()-> todateTimestring ();
$ date = carbon :: createfromFormat ('y-m-d h: i: s', $ datetime)-> formato ('d/m/y h: i: s');
Echo $ data;

Il seguente output simile verrà visualizzato in base alla data e all'ora corrente dopo l'esecuzione dello script sopra.

Conclusione:

La classe di carbonio è una classe molto utile di Laravel per lavorare con la data e l'ora. Diversi metodi di questa classe sono stati usati negli esempi di questo tutorial per stampare la data e l'ora in modi diversi ed eseguire le attività relative alla data e al tempo.