how to do this?
You're looking for strtotime
.
Sample Usage:
$myvar = strtotime("7 October 2009");
That gives you seconds since the Unix epoch, so you want:
$myvar = strtotime("7 October 2009") * 1000;
Watch out for the fact that strtotime
"guesses" what you mean (how should it interpret "12-08-2009"? probably as 8th December, but it might equally validly - and being a Brit, thoroughly sensibly - guess 12th August). If you know the format in advance, use strptime
.
Pay attention: strtotime() * 1000 is ok to have seconds expressed as milliseconds!
The right answer is that it is not possible to have a millisecond precision on date/time functions in PHP. The precision of Unix Epoc based functions is only of 1k milliseconds, aka second :)
Using the suggested answers you don't have milliseconds, but seconds expressed as number of milliseconds.
If you are aware of this, and you don't really need a millisecond precision then the answers given are ok, but the question was wrong :)