Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Тип DateTime
Форумы портала PHP.SU » PHP » SQL и Архитектура БД » Тип DateTime

Страниц (2): [1] 2 »
 

1. Lisjann - 03 Августа, 2009 - 09:14:54 - перейти к сообщению
Вот мой вапрос: как первести с помощью строковых функций перменную типа Date в формат YYYY-MM-DD из формата DD.MM.YYYY??????
Мне это необходимо для записи в таблицу MySql из текстового поля
2. RomAndry - 03 Августа, 2009 - 09:47:29 - перейти к сообщению
Если правильно понял вопрос, то
PHP:
скопировать код в буфер обмена
  1.  
  2. <?
  3. $date = date("Y-m-d", mktime(0,0,0, $month, $day, $year));
  4. ?>
  5.  
3. Lisjann - 04 Августа, 2009 - 13:42:19 - перейти к сообщению
ВОТ еще вопрос по датам!!!! как вычесть одну дату из другой чтобы получить кол-во дней(часов, минут....) между ними?????? и как можно сравнить одну дату с другой в ветвлении IF???
4. Nestor - 04 Августа, 2009 - 14:21:40 - перейти к сообщению
Не понял тебе это все в mysql сделать надо?
если нет, то вот тебе код

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $timestamp1 = 1002885470;
  3. $timestamp2 = time();
  4. print "c ".date("Y-m-d H:i",$timestamp1)." прошло " . date("H часов i минут",(abs($timestamp2-$timestamp1)));
  5. ?>
5. Мелкий - 04 Августа, 2009 - 15:15:19 - перейти к сообщению
Lisjann пишет:
Вот мой вапрос: как первести с помощью строковых функций перменную типа Date в формат YYYY-MM-DD из формата DD.MM.YYYY??????
Мне это необходимо для записи в таблицу MySql из текстового поля

из переданной из формы через POST строки date в YYYY-MM-DD
PHP:
скопировать код в буфер обмена
  1. <?
  2. list ($day, $month, $year) = split ('[/.-]', $_POST['date']);
  3. $date = "$year-$month-$day";
  4. ?>


Lisjann пишет:
ВОТ еще вопрос по датам!!!! как вычесть одну дату из другой чтобы получить кол-во дней(часов, минут....) между ними??????

Как написал Nestor, через перевод в Unix Timestamp, и затем обратно для более удобоваримого вида.
6. Pitmen - 04 Августа, 2009 - 16:29:29 - перейти к сообщению
Мелкий пишет:
Как написал Nestor, через перевод в Unix Timestamp, и затем обратно для более удобоваримого вида.

А как обратно перевести то?
7. Мелкий - 04 Августа, 2009 - 16:38:18 - перейти к сообщению
Передать функции date вторым параметром.
8. Pitmen - 04 Августа, 2009 - 21:15:18 - перейти к сообщению
Мелкий пишет:
Передать функции date вторым параметром.

А чуть попадробнее можно?
9. Мелкий - 04 Августа, 2009 - 21:34:28 - перейти к сообщению

выведет дату дд.мм.гггг, эквивалентную Unix Time, сохранённому в переменной $timestamp.
Допустимые символы форматирования функции date смотрите в ссылке выше.
10. EuGen - 05 Августа, 2009 - 12:15:52 - перейти к сообщению
Вычесть и в MySQL можно, если даты там хранятся. Вычислить разницу в секундах поможет FROM_UNIXTIME() , ну уж а затем можно перевести в часы/дни, как уж угодно.
11. Lisjann - 06 Августа, 2009 - 08:59:51 - перейти к сообщению
EuGen про функцию FROM_UNIXTIME() понятно работает а как перевести в дни может есть в PHP какое вырожение
12. Champion - 06 Августа, 2009 - 09:01:36 - перейти к сообщению
У тебя вызывает затруднение перевести количество секунд в количество дней?
(Добавление)
Pitmen пишет:
А чуть попадробнее можно?
Предлагаю начать борьбу с пользователями ("будущими программистами"), которые после того, как им подсказали какой функцией пользоваться, не в состоянии открыть мануал и задают такие вопросы. И еще и не грамотно. Это все-таки не какая-то там мега навороченная функция, для которой кучу настроек и еще не знаю чего произвести надо.
13. EuGen - 06 Августа, 2009 - 14:43:46 - перейти к сообщению
Lisjann пишет:
а как перевести в дни может есть в PHP какое вырожение

На bash.org, однозначно. Вы правда так думаете, или шутка такая?
Разделите на 60, получите минуты, на 3600 - часы. В общем, идея, я думаю, ясна.
14. JeroniMMo - 06 Апреля, 2011 - 18:42:18 - перейти к сообщению
Может не по теме, но:
Проскажите плиз как перевести обычную дату вида дд.мм.гггг чч.мм.сс в unix time формат?
15. Мелкий - 06 Апреля, 2011 - 19:02:56 - перейти к сообщению
JeroniMMo, mktime, если средствами PHP, UNIX_TIMESTAMP после STR_TO_DATE если силами MySQL (http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html)

 

Powered by ExBB FM 1.0 RC1