Simple Question: How to split date (08-17-2011) into month, day, year? PHP
I have a variable called $orderdate and it is set to a date format like this mm-dd-yyyy.
In PHP how would I spl开发者_运维技巧it this variable into $month, $day, $year?
Thanks for your help.
If you're sure about the format of input value, then:
$orderdate = explode('-', $orderdate);
$month = $orderdate[0];
$day = $orderdate[1];
$year = $orderdate[2];
You could also use preg_match()
:
if (preg_match('#^(\d{2})-(\d{2})-(\d{4})$#', $orderdate, $matches)) {
$month = $matches[1];
$day = $matches[2];
$year = $matches[3];
} else {
echo 'invalid format';
}
Additionally, you can use checkdate()
to validate the date.
If you are not certain about the input format you can also do the following:
$time = strtotime($input);
$day = date('d',$time);
$month = date('m',$time);
$year = date('Y',$time);
list($month, $day, $year) =explode("-",$orderdate);
A good approach is to use date_parse_from_format().
For your example:
$dateStr = '03-27-2015';
$dateArray = date_parse_from_format('m-d-Y', $dateStr);
This gives $dateArray
as:
Array
(
[year] => 2015
[month] => 3
[day] => 27
[hour] =>
[minute] =>
[second] =>
...
)
Use explode
to split string
list($m,$d,$y)=explode('-',$date);
精彩评论