PHP alternativa date_parse_from_format () en PHP 5.2

Dado que date_parse_from_format () está disponible solo en PHP 5.3, necesito escribir una función que imite su comportamiento en PHP 5.2.

Es posible escribir esta función para PHP 5.2 y hacer que funcione exactamente de la misma manera que lo hace en PHP 5.3?

Ejemplo

Para esta entrada:

<?php
$date = "6.1.2009 13:00+01:00";
print_r(date_parse_from_format("j.n.Y H:iP", $date));
?>

Necesito esta salida:

Array
(
    [year] => 2009
    [month] => 1
    [day] => 6
    [hour] => 13
    [minute] => 0
    [second] => 0
    [fraction] => 
    [warning_count] => 0
    [warnings] => Array
        (
        )

    [error_count] => 0
    [errors] => Array
        (
        )

    [is_localtime] => 1
    [zone_type] => 1
    [zone] => -60
    [is_dst] => 
)

Respuestas a la pregunta(5)

Su respuesta a la pregunta