ho questa stringa: "13/10 15:00" e vorrei convertirlo in timestamp, ma quando faccio questo:Convertire questa stringa a timestamp PHP
$timestamp = strtotime("13/10 15:00");
Esso restituisce un valore vuoto.
ho questa stringa: "13/10 15:00" e vorrei convertirlo in timestamp, ma quando faccio questo:Convertire questa stringa a timestamp PHP
$timestamp = strtotime("13/10 15:00");
Esso restituisce un valore vuoto.
Nel codice strtotime()
sta tentando di convertire 13/10
come il decimo giorno del 13 ° mese, che restituisce un errore.
Se si vuole analizzare una stringa data con un formato personalizzato, è meglio utilizzare DateTime :: createFromFormat() invece:
$dtime = DateTime::createFromFormat("d/m G:i", "13/10 15:00");
$timestamp = $dtime->getTimestamp();
La variabile '$ timestamp' contiene l'oggetto DateTime, non il timestamp. Per ottenere il timestamp, usa '$ timestamp-> getTimestamp();' oppure '$ timestamp-> format ('U');' –
@ Glavić Vero - ancora più affidabile di 'strtotime()'. Grazie. –
Link alla documentazione: http://php.net/manual/en/datetime.createfromformat.php – Doug
$timestamp = strtotime("13-10-2013 15:00");
Ciò può essere importante:
date nella m/d formati/y o DMY sono disambiguare cercando in il separatore tra i vari componenti: se il separatore è un barra (/), viene assunto il m/d/y americano; mentre se il separatore è un trattino (-) o un punto (.), viene assunto il formato europeo d-m-y .
Per evitare potenziali ambiguità, è preferibile utilizzare ISO 8601 (AAAA-MM-GG) date o DateTime :: createFromFormat() quando possibile.
strtotime non è infallibile - se si conosce il formato, è necessario utilizzare [DateTime :: createFromFormat] (http://php.net/manual/en/datetime.createfromformat.php) (disponibile da PHP 5.3.xe versioni successive) o simile. (Dovrai anche fornire l'anno mancante.) –
Il tuo formato non è supportato! http://www.php.net/manual/en/datetime.formats.compound.php – WebNovice
la tua stringa non è una data o un'ora ben definita –