#php #date #time #addition
#php #Дата #время #добавление
Вопрос:
У меня есть форма HTML / PHP.
в форме поля даты и времени представляют собой два отдельных поля ввода.
Я хочу сложить их вместе, чтобы сформировать одно значение в PHP.
поля ввода выглядят следующим образом:
<input type="date" id="coldate" name="coldate">
<input type="time" id="coltime" name="coltime">
Код, который я хочу, был бы похож на этот:
$coldate=$_POST['coldate'];
$coltime=$_POST['coltime'];
$coldatetime=$coldate $coltime;
echo $coldatetime;
Как я могу отформатировать это для отображения в формате гггг / мм / дд чч: мм?
Кроме того, могу ли я сохранить это как переменную, чтобы выполнить с ним некоторую логику? например
if (now()<$coldatetime 2hours){
}
Заранее благодарю.
Райан
Комментарии:
1. Можете ли вы привести пример coldate и time?
2. Привет @Mob. Пользователь будет вводить данные в форме 2011-11-07 для coldate и 10:00 для coltime. Спасибо.
Ответ №1:
Вы используете date();
и strtotime();
для форматирования даты
Пример :
echo date('Y/m/d g:i', strtotime("2011-11-07 10:00"));
Выводит
2011/11/07 10:00
Что касается использования as it для вычисления материала, вы можете преобразовать его в временную метку unix и работать с ней
date('U', strtotime("2011-11-07 10:00"));
или
Вы делаете что-то подобное, чтобы добавить » 2 часа»
echo date("Y/m/d g:i", strtotime(date("Y/m/d g:i", strtotime("2011-11-07 10:00")) . " 2 hours"));
Комментарии:
1. В моем случае это сработало, спасибо @Mob! $datetime= дата(‘Y/m/d g:i’, strtotime(«$coldate $coltime»)); эхо «дата-время есть «.$datetime; Приветствую, Райан
2. @PranavHosangadi Извини. Это опечатка. РайаНсмит, всегда пожалуйста
3. @Mob, да, я пытался отредактировать, но для этого мне нужно отредактировать как минимум 6 символов, так что….
Ответ №2:
Я предполагаю, что вы получите строку в сообщении. Также предполагается, что вы выполнили свои проверки и значения в $_POST['coldate']
и $_POST['coltime']
являются допустимыми строками даты и времени соответственно. Вы можете просто добавить строки
$coldate=$_POST['coldate'];
$coltime=$_POST['coltime'];
$coldatetime=$coldate . ' ' . $coltime;
echo date('Y/m/d g:i', strtotime($coldatetime));
Это приведет к следующему:
- Создайте допустимую строку даты и времени (путем добавления)
- преобразовать строку даты и времени в временную метку (
strtotime
) - Форматировать как год / месяц / день, час: минута и эхо.
Ответ №3:
$coldate=$_POST['coldate'];
$coltime=$_POST['coltime'];
$coldatetime=$coldate $coltime;
echo $coldatetime;
Вы можете использовать следующим образом
$coldatetime=$coldate." ".$coltime;
echo $coldatetime;
Чтобы получить дату в yyyy/mm/dd hh:mm
формате, используйте
echo date('Y/m/d h:i', strtotime($coldatetime));