Voglio ottenere la data di ieri utilizzando un formato di data specifico in php, questo è il formato:
$today = date("d.m.Y"); //15.04.2013
È possibile?
Prendi in considerazione il mese e gli anni se devono essere modificati rispettivamente.
Voglio ottenere la data di ieri utilizzando un formato di data specifico in php, questo è il formato:
$today = date("d.m.Y"); //15.04.2013
È possibile?
Prendi in considerazione il mese e gli anni se devono essere modificati rispettivamente.
Risposte:
eccoti
date('d.m.Y',strtotime("-1 days"));
questo funzionerà anche se il mese cambia
puoi farlo da
date("F j, Y", time() - 60 * 60 * 24);
o da
date("F j, Y", strtotime("yesterday"));
Passo 1
Abbiamo bisogno di impostare i dati del formato nella funzione date (): la funzione date () restituisce una stringa formattata in base alla stringa del formato specificato utilizzando il timestamp intero specificato o l'ora corrente se non viene fornito alcun timestamp. In altre parole, timestamp è opzionale e il valore predefinito è time ().
<?php
echo date("F j, Y");
?>
risultato: 30 marzo 2010
Passo 2
Per la data "ieri" usa la funzione php mktime (): La funzione mktime () restituisce il timestamp Unix corrispondente agli argomenti forniti. Questo timestamp è un numero intero lungo contenente il numero di secondi tra l'epoca Unix (1 gennaio 1970 00:00:00 GMT) e l'ora specificata. Gli argomenti possono essere omessi in ordine da destra a sinistra; qualsiasi argomento così omesso verrà impostato al valore corrente in base alla data e all'ora.
<?php
echo mktime(0, 0, 0, date("m"), date("d")-1, date("Y"));
?>
risultato: 1269820800
Passaggio 3
Ora unisci tutto e guarda questo:
<?php
$yesterday = date("Y-m-d", mktime(0, 0, 0, date("m") , date("d")-1,date("Y")));
echo $yesterday;
?>
risultato: 29 marzo 2010
Operando in modo simile, è possibile ricevere l'ora indietro.
<?php
$yesterday = date("H:i:s",mktime(date("H"), 0, 0, date("m"),date("d"), date("Y")));
echo $yesterday;
?>
risultato: 20:00:00
o 7 giorni fa:
<?php
$week = date("Y-m-d",mktime(0, 0, 0, date("m"), date("d")-7,date("Y")));
echo $week;
?>
risultato: 2010-03-23
prova questo
$tz = new DateTimeZone('Your Time Zone');
$date = new DateTime($today,$tz);
$interval = new DateInterval('P1D');
$date->sub($interval);
echo $date->format('d.m.y');
?>
Data di ieri in PHP:
echo date("Y-m-d", strtotime("yesterday"));
Se definisci il fuso orario nella tua app PHP (come dovresti), puoi farlo in questo modo:
date_default_timezone_set('Europe/Paris');
Quindi è semplice come:
$yesterday = new DateTime('yesterday'); // will use our default timezone, Paris
echo $yesterday->format('Y-m-d'); // or whatever format you want
(Potresti voler definire una costante o una variabile di ambiente per memorizzare il fuso orario predefinito.)
prova questo
<?php
$yesterday = date(“d.m.Y”, time()-86400);
echo $yesterday;
Puoi farlo anche usando la libreria Carbon :
Carbon::yesterday()->format('d.m.Y'); // '26.03.2019'
In altri formati:
Carbon::yesterday()->toDateString(); // '2019-03-26'
Carbon::yesterday()->toDateTimeString(); // '2019-03-26 00:00:00'
Carbon::yesterday()->toFormattedDateString(); // 'Mar 26, 2019'
Carbon::yesterday()->toDayDateTimeString(); // 'Tue, Mar 26, 2019 12:00 AM'