私は配列から時刻文字列を構築するためにDateTime::createFromFormat
とvsprintf
を使用し、この思い付いた:
<?php
$endDate = array(
'month' => '05',
'day' => '30',
'year' => '2017',
'hour' => '10',
'min' => '48',
'meridian' => 'pm'
);
$date = DateTime::createFromFormat('d/m/Y h:i a', vsprintf('%s/%s/%s %s:%s %s', [
$endDate['day'],
$endDate['month'],
$endDate['year'],
$endDate['hour'],
$endDate['min'],
$endDate['meridian'],
]));
echo $date->format('d/m/Y h:i a');
出力(とあなたがフォーマットを微調整することができます
30/05/2017 10:48 pm
実際には、おそらくDateTime
を使用する必要はありませんが、私はあなたがそれをさらに操作できるようにすることをお勧めします(時間間隔を追加するか、 RMAT)、あなたはおそらく何ができる:
printf('%s/%s/%s %s:%s %s', [
$endDate['day'],
$endDate['month'],
$endDate['year'],
$endDate['hour'],
$endDate['min'],
$endDate['meridian'],
]
デモ:https://eval.in/778600
あなたはこのような何かを探していますhttp://stackoverflow.com/questions/11322777/how-私は思っていた日付に変換されて元の配列に変換されました。 – cpap
http://php.net/manual/en/function.mktime.php – AbraCadaver
でもこれはトリックを行う可能性があります http://php.net/manual/en/datetime.createfromformat.php –