2016-12-05 4 views
0

Я хотел бы, чтобы мой результат был - 05/12/2016 < --- год зависит от текущего года.Эхо дата/месяц из базы данных и эха текущий год

$date='05/12/2014'; $current_year='date("Y")';

Я попытался совместить, как показано ниже, но явно его неправильно. Пожалуйста, помогите мне, как мне объединить эти два, чтобы получить мое желание?

$date =(date("d/m", strtotime($date']))/date("Y")); 
+1

Вы пытаетесь получить дату выше 05/12/2014 и просто изменить год к 2016 году? Если это так, я бы поместил вашу дату в объект DateTime, а затем вытащил каждую часть даты с использованием формата, а затем установил новый объект DateTime с использованием нового года ... Некоторые люди скажут, что используют взрыв в дату ... попытайтесь воздержаться от этого, потому что формат даты может измениться, например m/d/yd/m/y и т. д. – joshualawson

ответ

1

Ваш подход может работать. Просто адаптировать его немного:

date("d/m", strtotime($date)) . '/' . date("Y"); 

EDIT:

Как указывалось другими, с этим типом формата даты (d/M/Y), вы можете иметь проблемы, когда дата '25/12/2014. Чтобы быть уверенным, что ваш код работает в любом случае использовать date_parse_from_format контролировать свой формат даты:

$date = '25/12/2014'; 
$date_array = date_parse_from_format('d/m/Y',$date); 

echo $date_array['day'] . '/' . $date_array['month'] . '/' . date("Y"); 
1
$date='05/12/2014'; 

echo date("d/m", strtotime($date)) ."/". date("Y"); 
+2

Хотя этот фрагмент кода может решить вопрос, [включая объяснение] (// meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers) действительно помогает для улучшения качества вашей должности. Помните, что вы отвечаете на вопрос читателей в будущем, и эти люди могут не знать причин вашего предложения кода. Также попробуйте не толковать код с пояснительными комментариями, что уменьшает читаемость кода и объяснений! – kayess

1

Вы должны попробовать что-то вроде этого. Соедините ваш / и удалите ]. Вам нужно отформатировать дату своей базы данных. Он должен работать. Try:

$databaseDate = date("d/m/Y", strtotime("31/12/2014")); //you need to format your databse Date 
$mergeDate = date("d/m", strtotime($databaseTime)) . '/' . date("Y"); 
echo $mergeDate; 

LIVE DEMO

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

  • Нет связанных вопросов^_^