ho 1 data nel seguente formato:
$Data="2007-02-19 09:09:28";
come faccio ad agguingere 180 secondi?
ho 1 data nel seguente formato:
$Data="2007-02-19 09:09:28";
come faccio ad agguingere 180 secondi?
Devi prima trasformare la stringa in un time stamp; per farlo devi isolare i singoli elementi da passare alla funzione mktime(), ovvero ore - minuti - secondi - mese - giorno - anno.
Se la forma della data che hai postato (2007-02-19 09:09:28) è standard, cioè fissa all'interno dei tuoi script / campi del database, allora puoi parsarla con explode:
Codice PHP:
$Data = "2007-02-19 09:09:28";
$Data = explode(" ", $Data);
$date_1 = $Data[0];
$date_1 = explode("-", $date_1);
$date_2 = $Data[1];
$date_2 = explode(":", $date_2);
$day = $date_1[2];
$month = $date_1[1];
$year = $date_1[0];
$hour = $date_2[0];
$minutes = $date_2[1];
$seconds = $date_2[2];
// Il timestamp della data in oggetto:
$timestamp = mktime($hour, $minutes, $seconds, $month, $day, $year);
// Il risultato che volevi ottenere:
$timestamp += 180;
Emanuele DG
<?php echo "Proverbio zen(d): vivi ogni giorno come se fosse il ".date('d M Y', time()); ?>
Intellectual property
solo per fare il pignolo suggerirei di riparmiare qualche riga di codice con list :
codice:$Data = "2007-02-19 09:09:28"; list($year, $month, $day, $hous, $minutes, $seconds) = split('[- :]', $Data)); // Il timestamp della data in oggetto: $timestamp = mktime($hour, $minutes, $seconds, $month, $day, $year); // Il risultato che volevi ottenere: $timestamp += 180;
Suggerimenti del genere sono assolutamente bene accetti. Non conoscevo ancora split().Originariamente inviato da Manuel.s
solo per fare il pignolo suggerirei di riparmiare qualche riga di codice con list :
...
Emanuele DG
<?php echo "Proverbio zen(d): vivi ogni giorno come se fosse il ".date('d M Y', time()); ?>
Intellectual property
Codice PHP:
echo date('Y-m-d H:i:s',strtotime("$Data + 180 second"));