Я создаю систему, которая обновляет пользовательское действие, когда что-то сделано. У меня есть переменная $userhistory= 'User edited '.$info.' on July 14 2010 or (07-14-2010);
Я хочу знать, как я могу получить дату автоматически. для запроса SQL я использую ТЕПЕРЬ (), но в переменной как $userhistory, как я получаю дату и она хочет это только в любой из этих форм. не наряду со временем. Кроме того, я обновляю столбец userhistory в базе данных, которая является текстовым полем. Действительно ли это - корректный способ сделать это? Как я могу сохранить только 5 или 10 из последних нескольких обновлений?
Если вы используете NOW() при обновлении или записи записи в базу данных, колонка, хранящая дату (userhistory?), должна иметь тип DATETIME.
Тогда вы запустите SQL как обычно:
SELECT field1, field2, UNIX_TIMESTAMP(userhistory) FROM table;
Затем в PHP используйте date() для результата базы данных, чтобы отформатировать его соответствующим образом:
// July 14 2010
date('F j Y', $row['userhistory']);
// 07-14-2010
date('m-d-Y', $row['userhistory']); ,
Вы можете сделать это и без PHP.
SELECT
DATE_FORMAT(date_column, '%M %d %Y') AS 'Formatted',
DATE_FORMAT(date_column, '%m-%d-%Y') AS 'Formatted2'
FROM
table;