Я хочу добавить нет. недели в дате. Результат должен прийти на дату «Y-m-d».
Здесь «time_take» поступает из базы данных, а этого нет. как 1, 2, 3, 5, 7 и т. д.
<?php
$date = $record['Child']['dob'];
$str = "'+".$Vac['Vac']['time_take']." week'";
echo date('Y-m-d',strtotime($str,strtotime($date)));
?>
Мой результат наступает «1970-01-01»
Это формат даты в базе данных.
Помоги мне.
Если вы по-простому начинаете, вы всегда можете объединить код, как только он заработает
$dob = $record['Child']['dob'];
$num = $Vac['Vac']['time_take'];
$pDate = strtotime("$dob + $num week");
echo date('Y-m-d',$pDate);
<?php
$date = "2015-01-01";
$str = "+".$Vac['Vac']['time_take']." week";
//echo date('Y-m-d',strtotime("$str",strtotime($date)));
echo date('Y-m-d',strtotime($str,strtotime($date)));
?>
Выход:
2015-01-08
Проверьте в онлайн-редакторе. Кликните сюда
Попробуй это
$start_date = $record['Child']['dob'];
$str = $Vac['Vac']['time_take'];
$date = strtotime($start_date);
$date = strtotime("+".$str." week", $date);
echo date('Y-m-d', $date);
После некоторой корректировки в моем коде с 2-3 ответами помогите.
Окончательный ответ:
<?php
$date = $record['Child']['dob'];
$str = "+".$Vac['Vac']['time_take']." week";
echo date('Y-m-d',strtotime($str,strtotime($date)));
?>
Вывод правильный.
Он работает один раз после объединения кода.
$start_date = $record['Child']['dob'];
$str = $Vac['Vac']['time_take']." week";
$date = strtotime($start_date);
$date = strtotime("+".$str." week", $date);
echo date('Y-m-d', $date);
Выход:
2015-01-08