я хранится время даты в MySQL из учебника, как: 2011-02-10 01:21:39даты в PHP хранится
Из этого, как можно извлечь отдельные элементы с помощью PHP? Скажите, что я просто хочу года? или даже просто полная дата, если это невозможно?
я хранится время даты в MySQL из учебника, как: 2011-02-10 01:21:39даты в PHP хранится
Из этого, как можно извлечь отдельные элементы с помощью PHP? Скажите, что я просто хочу года? или даже просто полная дата, если это невозможно?
См. Функцию strtotime()
. Это преобразует вашу строку даты в метку времени. Затем используйте date()
вытащить необходимые детали:
$time = strtotime('a string containing some description of the time and date');
$year = date('Y', $time);
Я использовал это. благодаря – David19801
Почему бы не выбрать элементы из MySQL напрямую?
select year(datefield), month(datefield), day(datefield) from yourtable
вернется
+---------------+
| 2011 | 2 | 10 |
+---------------+
конечно, если вы хотите сделать datemath в PHP, было бы лучше, чтобы выбрать дату как UNIX_TIMESTAMP из MySQL, который возвращает время в секундах от Jan 1/1970, который вы можете напрямую подавать в систему дат PHP;
SELECT UNIX_TIMESTAMP(datefield) ...
$timestamp = mysql_fetch(...)
$date = date($timestamp);
Его хорошо делать на уровне MySQL ... +1 – Ish
<?php $original = $row['time'];
$date = date_create($original);
echo date_format($date, 'Y');?>
просто заменить $ оригинал с вашей собственной переменной. определенно проверьте php date()
http://php.net/manual/en/function.date.php
Вы имеете в виду date('Y', strtotime('2011-02-10 01:21:39'));
?
Go с @Marc's Solution если вы пробегаем по MySQL результирующего набора
Вы можете использовать extract
функцию MySQL из вашего запроса, как это:
SELECT EXTRACT(YEAR FROM yourDatefield) AS year,
EXTRACT(MONTH FROM yourDatefield) AS month,
EXTRACT(DAY FROM yourDatefield) AS day,
EXTRACT(HOUR FROM yourDatefield) AS hour,
EXTRACT(MINUTE FROM yourDatefield) AS minute,
EXTRACT(SECOND FROM yourDatefield) AS second
FROM
yourTable
Проверьте свою функцию extract
для получения дополнительной информации.
Посмотрите на Date and Time Functions для MySQL
Например, вы можете:
SELECT YEAR(DateColumn) FROM YourTable
date($format, strtotime($yourStringFromDB))
см PHP docs
для строк формата.
SELECT * FROM Dates
WHERE Date LIKE '%02%'
'выберите год (дата) от' за год и есть функция MySQL, чтобы принести все отдельно –
это было покрыто снова и снова, почти точно. – Andy
@nalroff Если вы не собираетесь ссылаться на дублированный вопрос, то не скулите - это не помогает. :-) –