Mit explode():
list($d, $m, $y, $h, $i, $s) = array_merge(explode('.', array_shift(explode(' ', $datum))), explode(':', array_pop(explode(' ', $datum))));
print "$y-$m-$d $h:$i:$s";
Vielleicht noch etwas weniger kryptisch:
$foo = explode(' ', $datum);
list($y, $m, $d) = explode('.', $foo[0]);
list($h, $i, $s) = explode(':', $foo[1]);
print "$y-$m-$d $h:$i:$s";
Mit strptime():
$d = strptime($datum, '%Y.%m.%d %H:%M:%S';
print "{$d['tm_year']}-{$d['tm_mon']}-{$d['tm_mday']} {$d['tm_hour']}:{$d['tm_min']}:{$d['tm_sec']}";