====== nexwork_date.php ======
Este arquivo possui a classe nexwork_date que possui várias funções para lidar com datas.
===== Lista de variáveis =====
$dias_semana //Array com o mapeamento dos dias da semana de forma abreviada.
$dias_semana2 //Array com o mapeamento dos dias da semana de forma sem abreviação.
----
===== Lista de funções =====
* [[nexwork_date.php#fncSomaArrayHoras()|fncSomaArrayHoras()]] Realiza a soma das horas contidas em um Array.
* [[nexwork_date.php#fncSomaDiasData()|fncSomaDiasData()]] Realiza a soma do número de dias a uma data específica.
* [[nexwork_date.php#fncSomaHorasData()|fncSomaHorasData()]] Realiza a soma de horas a uma data específica.
* [[nexwork_date.php#fncSubtraiDiasData()|fncSubtraiDiasData()]] Realiza a subtração do número de horas de uma data específica.
* [[nexwork_date.php#fncSubtraiMesesData()|fncSubtraiMesesData()]] Realiza a subtração de um número de meses de uma data específica.
* [[nexwork_date.php#fncSomaHoras()|fncSomaHoras()]] Realiza a soma de duas horas.
* [[nexwork_date.php#fncSubtraiHoras()|fncSubtraiHoras()]] Realiza a diferença entre duas horas.
* [[nexwork_date.php#fncDiferencaDatas()|fncDiferencaDatas()]] Calcula a quantidade de horas entre duas datas
* [[nexwork_date.php#fncNumDias()|fncNumDias()]] Calcula a quantidade de dias entre duas datas
* [[nexwork_date.php#fncGeraTimestamp()|fncGeraTimestamp()]] Recebe uma data no formato "dd/mm/aaaa hh:mm:ss" e devolve um timestamp.
* [[nexwork_date.php#fncConverteData()|fncConverteData()]] Recebe uma data e o formato que esta data esta e o formato que deve ser convertido a data e retorna a data convertida.
* [[nexwork_date.php#fncValidaDataHora()|fncValidaDataHora()]] Recebe uma data e hora e os formatos de data e formato de horas separados e valida e a data fornecida esta no formato requisitado se estiver devolve a data.
* [[nexwork_date.php#fncValidaData()|fncValidaData()]] Recebe uma data e o formato que ela esta e faz a validação caso esteja retorna a data em um array no formato [ dia , mes, ano]
* [[nexwork_date.php#fncValidaHora()|fncValidaHora()]] Recebe um hora e o formato e valida se a hora passada é válida de acordo com o formato passado
* [[nexwork_date.php#fncConverteDataPadrao()|fncConverteDataPadrao()]] Converte uma data passada para um formato no qual ela se encaixa melhor
* [[nexwork_date.php#fncConverteHoraPadrao()|fncConverteHoraPadrao()]] Converte a hora passada para o formato padrão HH:MM:SS
* [[nexwork_date.php#fncConverteDataHoraPadrao()|fncConverteDataHoraPadrao()]] Converte a data e hora passada para o formato padrão DD/MM/YYYY HH:MM:SS
* [[nexwork_date.php#fncMesesEntreDatas()|nfncMesesEntreDatas()]] Recebe duas datas e retorna a quantidade de meses nesse intervalo.
* [[nexwork_date.php#fncQtdDiasMes()|fncQtdDiasMes()]] Retorna a quantidades de dias existentes em um mês de algum ano
* [[nexwork_date.php#fncQtdMesesEntreDatas()|fncQtdMesesEntreDatas()]] Recebe duas datas e devolve quantos meses existem entre essas duas datas
* [[nexwork_date.php#fncListaDias()|fncListaDias()]] Recebe o mês e ano de devolve um array com os os dias do mês.
* [[nexwork_date.php#fncListaDiasEntreData()|fncListaDiasEntreData()]] Retorna um array com os dias existente em um intervalo de datas.
* [[nexwork_date.php#fncListaMeses()|fncListaMeses()]] Retorna um array com os nome dos meses do ano
* [[nexwork_date.php#fncMesDescricao()|fncMesDescricao()]] Recebe o mês em formato numérico e retorna uma string com o nome do mês por extenso 0
* [[nexwork_date.php#fncVerificaHoraNegativa()|fncVerificaHoraNegativa()]] Verifica se a hora passada é negativa
* [[nexwork_date.php#fncDiaSemana()|fncDiaSemana()]] Recebe uma data ( sem horas) e retorna o número referente ao dia da semana.
* [[nexwork_date.php#fncDiaUtil()|fncDiaUtil()]] Verifica se a data passada é dia útil ou não ( no caso se ela cai no sábado ou domingo)
* [[nexwork_date.php#fncCalculaIdade()|fncCalculaIdade()]] Calcula a idade recebendo uma data como entrada.
* [[nexwork_date.php#fncConverteHoraPadraoMinuto()|fncConverteHoraPadraoMinuto()]] Converte uma hora no formato HH:MM:SS passada em minutos
* [[nexwork_date.php#fncConverteHorasEmMinuto()|fncConverteHorasEmMinuto()]] Converte uma hora no formato HH:MM:SS passada em minutos
* [[nexwork_date.php#fncComparaData()|fncComparaData()]] Compara duas datas( em qualquer formato) e informa se são iguais ou se uma é maior que a outra
* [[nexwork_date.php#fncUltimoDiaMes()|fncUltimoDiaMes()]] Recebe uma uma data e retorna o ultimo dia do mês.
* [[nexwork_date.php#fncConverteDataHoraUTC()|fncConverteDataHoraUTC()]] Converte data no padrão UTC (Ex. 2022-04-20T13:48:20-03:00) no padrão brasileiro
----
===== fncSomaArrayHoras() =====
É uma função de acesso público.
A Função recebe um array de horas e retorna a soma total de horas que está no array.
O array de horas deve conter as horas no formato HH:MM:SS.
Retorna uma string com o resultado da soma no formato HH:MM:SS.
/**
*Soma as horas contidas no array.
*As horas devem estar no formato HH:MM:YY
*@param array $arrayHoras Array que contém as horas no formato HH:MM:SS
*@retunr string String com o resultado da soma das horas no formato HH:MM:SS
*/
public static function fncSomaArrayHoras($arrayHoras)
** Exemplo de uso.**
$arrayhoras = ["01:06:00","06:23:55","8:33:11"];
$res = nexwork_date::fncSomaArrayHoras($arrayhoras);
O resultado do exemplo será:
** 16:03:06 **
----
===== fncSomaDiasData() =====
É uma função de acesso público.
A função recebe uma data em qualquer formato aceito e um número de dias que deve se somar a data.
A data pode conter as horas ou não.
Retorna uma string no formato DD:MM:YY.
/**
* Realiza a soma dos dias à data passada.
*@param string $data Data em qualquer formato aceito.
*@param int $dias Quantidade de dias a ser somado ( deve ser inteiro e positivo).
*@return string String com a data adicionada com os dias no formato DD/MM/YYYY.
*/
public static function fncSomaDiasData($data, $dias)
** Exemplos de uso.**
$res = nexwork_date::fncSomaDiasData("05/07/2024 01:06:55",5);
$res2 = nexwork_date::fncSomaDiasData("25/05/2023",9);
$res3 = nexwork_date::fncSomaDiasData("01-06-2024",20);
Os resultados do exemplo são:
$res = 10/07/2024
$res2 = 03/06/2023
$res3 = 21/06/2024
----
===== fncSomaMesesData() =====
Esta função de acesso público.
A função recebe recebe uma data e uma quantidade de meses e acrescenta a quantidade de meses à data passada.
/**
*@param string $data A data para se somar os meses
*@param int $meses A quantidade de meses que será somado a data indicada.
*@return string String com o resultado no formato DD/YY/YYYY
*/
public static function fncSomaMesesData($data, $meses)
**Exemplos de uso. **
$res = nexwork_date::fncSomaMesesData("05/07/2024 01:06:55",5);
$res2 = nexwork_date::fncSomaMesesData("25/05/2023",9);
$res3 = nexwork_date::fncSomaMesesData("01-06-2024",20);
Os resultados do exemplo são:
$res = 05/12/2024
$res2 = 25/02/2024
$res3 = 01/02/2026
----
===== fncSomaDiasUteisData() =====
Esta é uma função de acesso público.
Esta função recebe uma data e um número de dias e realiza a soma dos dias realizando essa soma somente com dias úteis.
Recebe uma data e o número de dias uteis a serem somados.
Retorna uma String no formato DD/MM/YYYY
/**
*@param string $data Data na qual será realizada a soma dos dias úteis
*@param int $dias Quantidade de dias úteis que será somado a data (O valor deve ser positivo)
*@return string String com a data já somada no formato DD/MM/YYYY
*/
public static function fncSomaDiasUteisData($data, $dias)
** Exemplos de uso. **
$res = nexwork_date::fncSomaDiasUteisData('08/07/2024',6);
$res1 = nexwork_date::fncSomaDiasUteisData('10/03/2024',10);
Os resultados dos exemplos são:
$res = 16/07/2024
$res1 = 23/03/2024
----
===== fncSomaHorasData() =====
Esta é uma função de acesso público.
Soma um quantidade de horas a uma data específica.
Recebe uma data/hora com as horas no formato DD/MM/YY HH:MM:SS (sendo as horas no formato 24H) e também a quantidade de horas que será somada.
Retorna um string com as soma no formato DD/MM/YY HH:MM:SS (sendo as horas no formato 24H)
/**
*@param string $data Danta no formato DD/MM/YY HH:MM:SS (sendo as horas no formato 24H)
*@param int $horas Quantidade de horas para ser somada(deve ser um número positivo)
*@return string String com a data/hora no formato DD/MM/YY HH:MM:SS (sendo as horas no formato 24H)
*/
public static function fncSomaHorasData($datahora, $horas)
** Exemplos de uso. **
$res = nexwork_date::fncSomaHorasData('08/07/2024 04:33:22',6);
$res1 = nexwork_date::fncSomaHorasData('10/03/2024 22:55:11',10);
Os resultados dos exemplos são:
$res = 08/07/2024 06:43:32
$res2 = 10/03/2024 12:25:51
----
===== fncSubtraiDiasData() =====
Função de acesso público.
Essa função subtrai uma quantidade de dias de uma data passada
Recebe uma data e a quantidade de dias que deve ser subtraída.
Retorna uma String com a data resultante no formato DD/MM/YYYY
/**
*@param string $data Data que será utilizada
*@param int $dias Dias a ser subtraído da data ( inteiro positivo)
*@return string String no formato DD/MM/YYYY com o resultado da operação
*/
public static function fncSubtraiDiasData($data, $dias)
** Exemplos de uso. **
$res = nexwork_date::fncSubtraiDiasData('08/07/2024',6);
$res1 = nexwork_date::fncSubtraiDiasData('10/03/2024',10);
Os resultados do exemplo são:
$res = 02/07/2024
$res1 = 29/02/2024
----
===== fncSubtraiMesesData() =====
Função de acesso público.
Essa função subtrai uma quantidade de meses de uma data passada
Recebe uma data e a quantidade de meses que deve ser subtraída.
Retorna uma String com a data resultante no formato DD/MM/YYYY
/**
*@param string $data Data que será utilizada
*@param int $meses Meses a ser subtraído da data ( inteiro positivo)
*@return string String no formato DD/MM/YYYY com o resultado da operação
*/
public static function fncSubtraiMesesData($data, $meses)
** Exemplos de uso **
$res = nexwork_date::fncSubtraiMesesData('08/07/2024',6);
$res1 = nexwork_date::fncSubtraiMesesData('10-03-2024',10);
Os resultados dos exemplos são:
$res = 08/01/2024
$res1 = 10/05/2023
----
===== fncSomaHoras() =====
Função de acesso público.
Essa função soma dois valores de horas passados.
Recebe uma dos horários que será somado e depois recebe o segundo horário a ser somado
Retorna uma String com o total de horas resultante no formato HH:MM:SS
/**
*@param string $hora1 Primeiro horário a ser somado
*@param string $hora2 Segundo horário a ser somado
*@return string String no formato HH:MM:SS com o resultado da operação
*/
public static function fncSomaHoras($hora1, $hora2)
** Exemplos de uso.**
$res = nexwork_date::fncSomaHoras('05:00:00','04:00:00');
$res1 = nexwork_date::fncSomaHoras('22:33:11','06:10:50');
Os resultados dos exemplos são:
$res = 09:00:00
$res2 = 28:44:01
----
===== fncSubtraiHoras() =====
Função de acesso público.
Essa função calcula a diferença entre horas.
Recebe a hora inicial e a final e devolve a diferença entre elas.
Retorna uma String com a data resultante no formato HH:MM:SS
/**
*@param string $hora1 Hora que terá seu valor subtraído
*@param string $hora2 Hora que será subtraída da $hora1
*@return string String no formato HH:MM:SS com o resultado da operação
*/
public static function fncSubtraiHoras($hora1, $hora2)
** Exemplos de uso. **
$res = nexwork_date::fncSubtraiHoras('05:00:00','04:00:00');
$res1 = nexwork_date::fncSubtraiHoras('22:33:11','06:10:50');
Os resultados dos exemplos são:
$res = 01:00:00
$res2 = 16:22:21
----
===== fncDiferencaDatas() =====