2013-04-19 6 views
-1

меня раз в этом формате:Как изменить эту дату на PHP?

2013-04-10 10:25:00 

не нужна часть времени, только это:

2013-04-10 

Как сделать это правильно? Я не хочу использовать удаление строки с конца, но правильно.

+2

Где вы получаете эту дату/время стоимость от? Если это из mysql, то после 'select date (datetimefield)' будет лучше, чем строковые манипуляции после факта. –

ответ

4
$date = date("Y-m-d", strtotime("2013-04-10 10:25:00")); 

ИЛИ

$dto = new DateTime("2013-04-10 10:25:00"); 
$mnd = $dto->format("Y-m-d"); 
2

Вы также могли бы сделать подстроки, считая, что дата является фиксированной длиной

$date_only = substr($date, 0, 10); 
+1

+1 Да, сделайте это. Игнорируйте то, что я сказал. –

+0

Он сказал, что не хочет использовать струнные манипуляции. – craig1231

+0

Если вы можете дать мне правильный ответ о том, как конечный результат будет лучше или хуже, тогда мне бы понравилось разъяснение. Помощь тем, кто наивна к проблеме, которую они на самом деле пытаются решить, была моей попыткой, я не пытался следовать домашнему руководству – Bryan

0

Просто переназначить только дату:

$date = $datetime->format('Y-m-d')

+0

-1: Дата в вопросе - это строка, а не объект даты. – nibra

+0

Затем превратите его в объект даты, если вы не хотите использовать строковые манипуляции, это чистая опция. –

0

Просто используйте PHP встроенный в explode() функции и использовать пространство, чтобы взорвать эту строку:

$get_date = explode(" ", "2013-04-10 10:25:00"); 
$date = $get_date[0]; 

Он должен работать

Смежные вопросы