Analisi PHP dell'istanza di Amazon EC2 "launchTime"

Quando descrivi le tue istanze EC2, ottieni un nodo XML di: –

[launchTime] => 2011-10-14T09:22:37.000Z 

Mi piacerebbe usare questo command con PHP, per misurare il numero di secondi in cui l'istanza è stata triggersta e intraprendere azioni.

Mi sembra che ci sia un certo numero di modi per abbattere questo, compresi gli esplosioni e le ricerche di stringhe e regex. Ma qual è il modo migliore ?

RISPOSTA FINALE:

Ok, dopo aver esaminato questo thread , ho deciso che questo approccio è l'unico che sembra restituire una misura accurata:

 $dt = DateTime::createFromFormat('Ymd\TH:i:su\Z', $date); $now = new DateTime(); echo ($now->getTimestamp() - $dt->getTimestamp())."\n"; 

tENTATIVI:

In PHP 5.3 utilizzando le classi (nessun formato 'U'):

 $dt = DateTime::createFromFormat('Ymd\TH:i:su\Z', $arr['launchTime']); echo (new DateTime())->format('U'); 

In PHP 5.3 utilizzando chiamate procedurali (funziona anche come soluzione finale):

 $dt = date_create_from_format('Ymd\TH:i:su\Z', $arr['launchTime']); $now = date_create(); echo ($now->getTimestamp() - $dt->getTimestamp()); 

In qualsiasi versione che utilizza strtotime (tempo di return errato):

 date_default_timezone_set('UTC'); echo time() - strtotime($arr['launchTime']); 
 $ts = DateTime::CreateFromFormat('Ymd\TH:i:s?????', '2011-10-14T09:22:37.000Z'); echo $ts->diff(new DateTime())->format('U'); 

supponendo che tu sia su PHP 5.3+