Hallo,

Ik heb voor mijn nieuwsysteem bij het toevoegen een van een nieuw bericht (via een formuliertje) een veld met de huidige tijd, deze wordt automatisch door PHP met een timestamp gevuld.

Nu lees ik deze in het bericht in in het bericht, echter ik krijg de volgende rare notatie. Hoe zet ik deze om naar gewone notatie??

Voorbeeld:
=======
Gepost op: 2004-02-29 18:57:18

Dit moet uiteraard zijn:
================
Gepost op: 29-02-2004 18:57:18


Met dank,

Hagee
<?
list($year,$month,$day,$hour,$minute,$second)=split("- :",$timestamp);
?>
dat zou moeten werken :)
dan heb je alle waardes in aparte variabelen, maar dit zou natuurlijk ook werken
<?
ereg_replace('([0-9]{4})-([0-9]{2})-([0-9]{2}) ([0-9]{2}):([0-9]{2}):([0-9]{2}','\\3-\\2-\\1 \\4:\\5:\\6',$timestamp);
?>
of dit:
<?
$year = substr($timestamp,0,4);
$month = substr($timestamp,5,2);
$day = substr($timestamp,8,2);
$hour = substr($timestamp,11,2);
$minute = substr($timestamp,14,2);
$second = substr($timestamp,17,2);
?>

kies maar wat jij het makkelijkst vind :)
btw ik denk dat de laatste mogelijkheid het minst cpu intensief is (de andere gebruiken regexp en dat is meestal langzamer)
Dan zou dit toch ook kunnen?
<?
# Splitsen op de space
$split = explode(" ", $timestamp);
# De datum halen
$date = explode("-", $split[0]);
# $date[0] geeft 't jaar, $date[1] de maand en $date[2] de dag
# Dan de tijd dies gewoon
$time = $split[1];
?>
Is dat niet korter (en mss wel beter) ?

Edit:
<?
# Dan zou je het dus zo gebruiken:
echo "Gepost op: $date[2] $date[1] $date[0] $time";
?>
Niemand die hierover wat zegt?

Ik vond mijn manier wel makkelijk maar waarom dacht Rick er dan niet aan...

Maw: Kan het wel ? (Ja toch?)
niet zo onzeker mitch ;)
ja het kan ook op die manier, en die heb ik ook wel overwogen
maar ik vond split eventjes makkelijker omdat het dan met 1 functie kan

maar op jouw manier werkt het ook goed hoor, maar dan zou ik het op deze manier doen
<?
list($year,$month,$day)=explode('-',substr($timestamp,0,10));
?>

Reageren