- как вычесть 1 месяц из любой даты и получить значение этого месяца из базы данных
- Решение
- DateTimeImmutable::sub
- Список параметров
- Возвращаемые значения
- Примеры
- Смотрите также
- User Contributed Notes
- как вычесть 1 месяц из любой даты и получить значение этого месяца из базы данных
- Решение
- date_sub
- Список параметров
- Возвращаемые значения
- Примеры
- Примечания
- Смотрите также
- date_sub
- Список параметров
- Возвращаемые значения
- Примеры
- Примечания
- Смотрите также
как вычесть 1 месяц из любой даты и получить значение этого месяца из базы данных
$ payment_date — это дата, из которой я хочу вычесть 1 месяц.
как я мог сделать?
Payment Month Payment Date Gross Salary Total Deduction Net Salary Advance Salary Incentive Fine Deduction Payment Amount Details payment_for_month)); ?> payment_date)); ?> basic_salary + $v_payment_history->house_rent_allowance + $v_payment_history->medical_allowance + $v_payment_history->special_allowance + $v_payment_history->fuel_allowance + $v_payment_history->phone_bill_allowance + $v_payment_history->other_allowance; ?> tax_deduction + $v_payment_history->provident_fund + $v_payment_history->other_deduction; ?> award_amount; ?> incentive; ?> fine_deduction; ?> payment_amount; ?> salary_payment_id) ?> There is no data for display
$ payment_date — это дата, из которой я хочу вычесть 1 месяц.
как я мог сделать? Я хочу оплату только за последний месяц с того месяца, когда я даю платеж
Решение
modify('-1 month'); echo $date->format('Y-m-d H:i:s');
Вы также можете ввести строку даты в качестве конструктора. new DateTime(‘2014-09-18’);
DateTimeImmutable::sub
Возвращает новый объект DateTimeImmutable , в котором указанный объект DateInterval вычитается из указанного объекта DateTimeImmutable.
Список параметров
Только для процедурного стиля: объект DateTime , возвращаемый date_create() . Функция изменяет этот объект.
Возвращаемые значения
Возвращает новый объект DateTimeImmutable с модифицированными данными.
Примеры
Пример #1 Пример использования DateTimeImmutable::sub()
$date = new DateTimeImmutable ( ‘2000-01-20’ );
$newDate = $date -> sub (new DateInterval ( ‘P10D’ ));
echo $newDate -> format ( ‘Y-m-d’ ) . «\n» ;
?>?php
Результат выполнения данных примеров:
Пример #2 Дополнительный пример DateTimeImmutable::sub()
$date = new DateTimeImmutable ( ‘2000-01-20’ );
$newDate = $date -> sub (new DateInterval ( ‘PT10H30S’ ));
echo $newDate -> format ( ‘Y-m-d H:i:s’ ) . «\n» ;
?php
$date = new DateTimeImmutable ( ‘2000-01-20’ );
$newDate = $date -> sub (new DateInterval ( ‘P7Y5M4DT4H3M2S’ ));
echo $newDate -> format ( ‘Y-m-d H:i:s’ ) . «\n» ;
?>
Результат выполнения данного примера:
2000-01-19 13:59:30 1992-08-15 19:56:58
Пример #3 Будьте осторожны при вычитании месяцев
$date = new DateTimeImmutable ( ‘2001-04-30’ );
$interval = new DateInterval ( ‘P1M’ );
?php
$newDate1 = $date -> sub ( $interval );
echo $newDate1 -> format ( ‘Y-m-d’ ) . «\n» ;
$newDate2 = $newDate1 -> sub ( $interval );
echo $newDate2 -> format ( ‘Y-m-d’ ) . «\n» ;
?>
Результат выполнения данного примера:
Смотрите также
- DateTimeImmutable::add() — Возвращает новый объект с добавленным количеством дней, месяцев, лет, часов, минут и секунд
- DateTimeImmutable::diff() — Возвращает разницу между двумя объектами DateTime
- DateTimeImmutable::modify() — Создаёт новый объект с изменённой временной меткой
User Contributed Notes
как вычесть 1 месяц из любой даты и получить значение этого месяца из базы данных
$ payment_date — это дата, из которой я хочу вычесть 1 месяц.
как я мог сделать?
Payment Month Payment Date Gross Salary Total Deduction Net Salary Advance Salary Incentive Fine Deduction Payment Amount Details payment_for_month)); ?> payment_date)); ?> basic_salary + $v_payment_history->house_rent_allowance + $v_payment_history->medical_allowance + $v_payment_history->special_allowance + $v_payment_history->fuel_allowance + $v_payment_history->phone_bill_allowance + $v_payment_history->other_allowance; ?> tax_deduction + $v_payment_history->provident_fund + $v_payment_history->other_deduction; ?> award_amount; ?> incentive; ?> fine_deduction; ?> payment_amount; ?> salary_payment_id) ?> There is no data for display
$ payment_date — это дата, из которой я хочу вычесть 1 месяц.
как я мог сделать? Я хочу оплату только за последний месяц с того месяца, когда я даю платеж
Решение
modify('-1 month'); echo $date->format('Y-m-d H:i:s');
Вы также можете ввести строку даты в качестве конструктора. new DateTime(‘2014-09-18’);
date_sub
Вычитает из времени объекта DateTime заданный интервал DateInterval.
Список параметров
Только для процедурного стиля: Объект DateTime, возвращаемый date_create() . Функция изменяет этот объект.
Возвращаемые значения
Возвращает объект DateTime для применения в цепи методов или FALSE в случае возникновения ошибки.
Примеры
Пример #1 Пример использования DateTime::sub()
$date = new DateTime ( ‘2000-01-20’ );
$date -> sub (new DateInterval ( ‘P10D’ ));
echo $date -> format ( ‘Y-m-d’ ) . «\n» ;
?>?php
$date = date_create ( ‘2000-01-20’ );
date_sub ( $date , date_interval_create_from_date_string ( ’10 days’ ));
echo date_format ( $date , ‘Y-m-d’ );
?>?php
Результат выполнения данных примеров:
Пример #2 Другие примеры DateTime::sub()
$date = new DateTime ( ‘2000-01-20’ );
$date -> sub (new DateInterval ( ‘PT10H30S’ ));
echo $date -> format ( ‘Y-m-d H:i:s’ ) . «\n» ;
?php
$date = new DateTime ( ‘2000-01-20’ );
$date -> sub (new DateInterval ( ‘P7Y5M4DT4H3M2S’ ));
echo $date -> format ( ‘Y-m-d H:i:s’ ) . «\n» ;
?>
Результат выполнения данного примера:
2000-01-19 13:59:30 1992-08-15 19:56:58
Пример #3 Будьте внимательны при вычитании месяцев
$date = new DateTime ( ‘2001-04-30’ );
$interval = new DateInterval ( ‘P1M’ );
?php
$date -> sub ( $interval );
echo $date -> format ( ‘Y-m-d’ ) . «\n» ;
$date -> sub ( $interval );
echo $date -> format ( ‘Y-m-d’ ) . «\n» ;
?>
Результат выполнения данного примера:
Примечания
При работе с PHP 5.2 в качестве альтернативы можно использовать функцию DateTime::modify() .
Смотрите также
- DateTime::add() — Добавляет заданное количество дней, месяцев, лет, часов, минут и секунд к объекту DateTime
- DateTime::diff() — Возвращает разницу между двумя DateTime объектами
- DateTime::modify() — Изменение временной метки
date_sub
Вычитает из времени объекта DateTime заданный интервал DateInterval.
Список параметров
Только для процедурного стиля: Объект DateTime, возвращаемый date_create(). Функция изменяет этот объект.
Возвращаемые значения
Возвращает объект DateTime для применения в цепи методов или FALSE в случае возникновения ошибки.
Примеры
Пример #1 Пример использования DateTime::sub()
$date = new DateTime('2000-01-20'); $date->sub(new DateInterval('P10D')); echo $date->format('Y-m-d') . "\n";
$date = date_create('2000-01-20'); date_sub($date, date_interval_create_from_date_string('10 days')); echo date_format($date, 'Y-m-d');
Результат выполнения данных примеров:
Пример #2 Другие примеры DateTime::sub()
$date = new DateTime('2000-01-20'); $date->sub(new DateInterval('PT10H30S')); echo $date->format('Y-m-d H:i:s') . "\n"; $date = new DateTime('2000-01-20'); $date->sub(new DateInterval('P7Y5M4DT4H3M2S')); echo $date->format('Y-m-d H:i:s') . "\n";
Результат выполнения данного примера:
2000-01-19 13:59:30 1992-08-15 19:56:58
Пример #3 Будьте внимательны при вычитании месяцев
$date = new DateTime('2001-04-30'); $interval = new DateInterval('P1M'); $date->sub($interval); echo $date->format('Y-m-d') . "\n"; $date->sub($interval); echo $date->format('Y-m-d') . "\n";
Результат выполнения данного примера:
Примечания
При работе с PHP 5.2 в качестве альтернативы можно использовать функцию DateTime::modify().
Смотрите также
- DateTime::add() — Добавляет заданное количество дней, месяцев, лет, часов, минут и секунд к объекту DateTime
- DateTime::diff() — Возвращает разницу между двумя DateTime объектами
- DateTime::modify() — Изменение временной метки
Описание класса datetime, примеры использования класса datetime.