English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
A função date_sub() subtrai uma quantidade específica de dias, meses, anos, horas, minutos e segundos de um objeto DateTime.
essa função éDateTime::sub()apelido. A função aceita um objeto DateTime e um objeto DateInterval, subtraindo o intervalo especificado do DateTime.
date_sub$object, $interval)
número sequencial | parâmetros e descrição |
---|---|
1 | objeto (obrigatório) este é um objeto DateTime, que especifica/representa a data da qual você precisa subtrair o intervalo de tempo. |
2 | intervalo (obrigatório) este é um objeto DateInterval, que especifica o intervalo a ser subtraído. |
a função PHP date_sub() retorna um objeto DateTime, subtraindo o intervalo especificado. Se falhar, a função retornará um valor booleanofalse.
essa função foi inicialmente introduzida na versão do PHP5.3introduzido na versão 5.2.0 e pode ser usado em todas as versões mais recentes.
abaixo há um exemplo que demonstradate_sub()uso da função.-
<?php //criar um objeto DateTime $date = date_create("2019-09-25"); //adicionar intervalo de tempo à data $res = date_sub($date, new DateInterval('PT10H30S')); //formatear a data para imprimi-la $format = date_format( $res, "Y-m-d H:i:s"); print($format); ?>testar para ver‹/›
resultado da saída
2019-09-24 13:59:30
abaixo há um exemplo que usa essa função para criar intervalos e subtrai o intervalo criado da data
<?php $date = date_create("1989-09-26"); $interval = date_interval_create_from_date_string('1025 dias'); $res = date_sub($date, $interval); $format = date_format( $res, "Y-m-d"); print($format); ?>testar para ver‹/›
resultado da saída
1986-12-06
Agora, vamos tentar adicionar intervalos com ano, mês e dia-
<?php //criar objeto DateTime $date = date_create("1989-09-26"); //adicionar intervalo à data $res = date_sub($date, new DateInterval('P29Y2M5D')); //formatear a data para imprimi-la $format = date_format( $res, "Y-m-d"); print($format); ?>testar para ver‹/›
resultado da saída
1960-07-21
da data1995-05-07menos 150 Dias:
<?php $date = date_create('1995-05-07'); $interval = date_interval_create_from_date_string('150 days'); $date->sub($interval); >print($date -> format('Y-m-d')); ?>testar para ver‹/›
isto resulta em-
1994-12-08