calcolo intervallo di tempo

ho due timestamp, e vorrei poter calcolare l'intervallo di tempo, nella forma ad esempio "10 anni, 3 mesi, 4 giorni".

esiste qualcosa di già fatto in php?

grazie :)

inviato 6 anni fa
larchitetto
X 0 X

diciamo che ho risolto, eseguendo una sottrazione tra i vari valori - appena provo posto i dettagli -.

però ho necessità di dover convertire una stringa (con un preciso format accettato da date) in timestam.

ho provato il metodo DateTime::createFromFormat o il relativo alias date_create_from_format, ma ad ogni chiamata, il browser mi dice: "Fatal error: Call to undefined method..."

in che modo installo questa classe?? o come posso risolvere in alternativa?

grazie

risposto 6 anni fa
larchitetto
X 0 X

in qualche modo son riuscito, ma solo con l'anno: mese e giorni restano leggermente sballati.

esiste qualche cosa di pronto in merito? :)

risposto 6 anni fa
larchitetto
X 0 X

Usa gli oggetti DateTime e DateInterval

$data1 = new DateTime();
$data2 = new DateTime();

$data1->setTimestamp($ts1);
$data2->setTimestamp($ts2);

$dateInterval = $data2->diff($data1);

echo $dateInterval->format("%y anni, %m mesi,  %d giorni.");

 :bye:

P.S.: non ho avuto modo di provare lo script...

risposto 6 anni fa
Gianni Tomasicchio
X 0 X

ciao, grazie della risposta, ma la DateTime non me la trova, in che modo si installa?

proverò lo script, nel frattempo ne ho esteso un altro che si trova a questo link:

http://www.php.net/manual/en/function.date-diff.php

risposto 6 anni fa
larchitetto
X 0 X

Che versione di PHP stai usando?

risposto 6 anni fa
Gianni Tomasicchio
X 0 X

PHP Version 5.2.10-2ubuntu6.4

risposto 6 anni fa
larchitetto
X 0 X

da PHP 5.2 l'estensione DateTime dovrebbe essere attiva di default  :dunno:

controlla se c'è un pacchetto da installare

 :bye:

risposto 6 anni fa
Gianni Tomasicchio
X 0 X

eh infatti avevo notato sta cosa, tra l'altro non ho trovato eventualmente come poterla installare dalla doc di php.

l'unico pacchetto php dal synaptic che abbia a che fare con le date è il seguente:

"php-date (PHP PEAR module for date and time manipulation)

These are generic classes for representation and manipulation of

dates, times and time zones without the need of timestamps, which is

a huge limitation for php programs. They include time zone data, time

zone conversions and many date/time conversions.

 Homepage: http://pear.php.net/package/Date"

 :dunno:

come la vedi?

risposto 6 anni fa
larchitetto
X 0 X

La vedo nera! Quel pacchetto non va ben, è di PEAR!

risposto 6 anni fa
Gianni Tomasicchio
X 0 X

eh infatti, ma è l'unico che mi esce dal repo.

cercando ho trovato i seguenti link che non risolvono il problema, bensì lo aggirano:

http://drupal.org/node/61565

http://api.drupal.org/api/function/format_interval/4.7

ho googlato come installare questa classe, ma non ho trovato nulla  :buck:

PS: ma pear è un framework, giusto?

risposto 6 anni fa
larchitetto
X 0 X

Pear è un repository di classi per PHP general purpose, molto in voga prima dell'avvento dei framework.

 :bye:

risposto 6 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda