Преобразование даты Великобритании в США в PHP с помощью другого разделителя

Как бы вы конвертировали дату Великобритании в US date в PHP без особого отношения к разделителю:

например

01/01/2012 to 2012-01-01 

Заранее спасибо!

Solutions Collecting From Web of "Преобразование даты Великобритании в США в PHP с помощью другого разделителя"

Если вам не нужно вызывать функции даты и времени, не делайте этого, и в соответствии с вашим вопросом кажется, что вам нужны только строковые манипуляции. Использовать sscanf ()

 list($date,$month,$year) = sscanf("01/01/2012", "%d/%d/%d"); echo "$month-$date-$year"; 

Вы можете использовать strtotime но это магическая функция, поэтому я не доверяю ей.

Более осторожный подход состоит в том, чтобы просто сделать очень ручное преобразование, например:

 $us_date = "01/01/2012"; $parts = explode("/", $us_date, 3); $uk_date = $parts[2] . "-" . $parts[0] . "-" . $parts[1]; // flip day and month? 
 <?php $format1 = strtotime("01/01/2012"); //$format2 = strtotime("2012-01-01"); echo date("Ymd",$format1); ?>