#php #codeigniter-2
#php #codeigniter-2
Вопрос:
Можете ли вы объяснить ниже строки? пожалуйста, приведите несколько примеров.
strtotime(SQLDATE." 1 month")
Комментарии:
1. echo или var_dump значение SQLDATE? Что это говорит?
2. Похоже
SQLDATE
, это константа.var_dump
это и опубликуйте то, что у вас есть здесь.3. Это работает следующим образом: например: SQLDATE = ‘2011-10-28’ <br> strtotime(SQLDATE. » 1 месяц»)
Ответ №1:
Это не относится к CodeIgniter, это общая функция PHP:
Из документов:
Функция ожидает получения строки, содержащей английский формат даты, и попытается преобразовать этот формат в временную метку Unix (количество секунд с 1 января 1970 00:00:00 UTC)
Кроме того, относительно относительного формата даты / времени:
Формат:
number space? (unit | 'week')
Обрабатывает элементы относительного времени, где значением является число.
Пример:" 5 weeks", "12 day", "-7 weekdays"
Итак, ваш пример:
SQLDATE = '2011-10-28';
strtotime(SQLDATE. " 1 month");
вернет временную метку Unix для даты через 1 месяц после 28 октября 2011 года.
Ответ №2:
Проще говоря, вы просто добавляете 1 месяц к значению даты в SQLDATE. Итак, в вашем примере значение, которое вернет strtotime, равно 1 месяцу после 2011-10-28, то есть 2011-11-28.
Strtotime возвращает количество секунд с момента начала эпохи. Возвращаемые значения strtotime будут иметь больше смысла, если вы его отформатируете:
php > define("SQLDATE",'2011-10-28');
php > echo date("Y-m-d",strtotime(SQLDATE));
2011-10-28
php > echo date("Y-m-d",strtotime(SQLDATE . " 1 month"));
2011-11-28
php >