In my application I was using ADODB to retrieve data from Microsoft Access. During queries, fields defined as "Date/Time" in Access were being returned to PHP as instances of the Variant class.
For some reason, the variant_date_to_timestamp function returned incorrect timestamps. As a workaround, I used variant_set_type($variant, VT_BSTR) to get a string representation of the date. This can be used for most variant types PHP doesn't handle.