CrazyLOL 2 Denunciar post Postado Setembro 14, 2016 Galera uma duvida bem bobona.. Para pegar o dia da semana eu sei que é utilizando a função por exemplo: date("w"); Porem como faço para recuperar uma data conforme o dia da semana? O que eu preciso é gerar um relatório da semana, porem eu preciso ter a data de segunda ate sexta-feira, pensei em criar um while de 1 ate 5 (seg----) e recuperaria a data que estaria na semana e assim ter o meu valor do dia.. Alguém precisou de algo que pode da uma ajuda?? obrigado!!! Compartilhar este post Link para o post Compartilhar em outros sites
Web.Developer 9 Denunciar post Postado Setembro 15, 2016 Olá espero ter ajudado if(date("w", dataToTimestamp($xDataInicial))=="0"){ // Se for domingo ou feriado , soma 01 $xDataInicial=Soma1dia($xDataInicial); }else if(date("w", dataToTimestamp($xDataInicial))=="6"){ // Se for sábado soma 02 $xDataInicial=Soma1dia($xDataInicial); $xDataInicial=Soma1dia($xDataInicial); }else{ // Verifica se é feriado for($i=0; $i<=12; $i++){ if($xDataInicial==Feriados(date("Y"),$i)){ $xDataInicial=Soma1dia($xDataInicial); } } } Compartilhar este post Link para o post Compartilhar em outros sites
Web.Developer 9 Denunciar post Postado Setembro 15, 2016 function DataLiberacao($xDataInicial,$xSomarDias){ for($ii=1; $ii<=$xSomarDias; $ii++){ $xDataInicial=Soma1dia($xDataInicial); // Soma dia normal // Verifica se é dia útil if(date("w", dataToTimestamp($xDataInicial))=="0"){ // Se for domingo ou feriado , soma 01 $xDataInicial=Soma1dia($xDataInicial); }else if(date("w", dataToTimestamp($xDataInicial))=="6"){ // Se for sábado soma 02 $xDataInicial=Soma1dia($xDataInicial); $xDataInicial=Soma1dia($xDataInicial); }else{ // Verifica se é feriado for($i=0; $i<=12; $i++){ if($xDataInicial==Feriados(date("Y"),$i)){ $xDataInicial=Soma1dia($xDataInicial); } } } } // Retorna a data return $xDataInicial; } Compartilhar este post Link para o post Compartilhar em outros sites
Gabriel Heming 766 Denunciar post Postado Setembro 15, 2016 Use a biblioteca date/time com formatos relativos: $start = new DateTime('monday this week');//2016-09-12 00:00:00 $end = new DateTime('friday this week');//2016-09-16 00:00:00 Date/Time pode utilizar comparação strict: $now = new DateTime(); if ($now >= $start && $now <= $end) { } Entretanto, para a sexta feira, deve lembrar que ela calcula apenas até o horário zero (2016-09-16 00:00:00). Entretanto, a sexta vai até as 23:59:59. Essa situação pode ser tratada de duas formas, calculando até sábado e usando apenas < ao invés de <=: $start = new DateTime('monday this week');//2016-09-12 00:00:00 $end = new DateTime('saturday this week');//2016-09-17 00:00:00 $now = new DateTime(); //apenas < irá contar até 2016-09-16 23:59:59 if ($now >= $start && $now < $end) { } Ou, adicionar o horário para a sexta: $start = new DateTime('monday this week');//2016-09-12 00:00:00 $end = new DateTime('fridaythis week');//2016-09-16 00:00:00 $end->setTime(23 , 59 , 59);//2016-09-16 23:59:59 $now = new DateTime(); if ($now >= $start && $now <= $end) { } Compartilhar este post Link para o post Compartilhar em outros sites
CrazyLOL 2 Denunciar post Postado Setembro 15, 2016 Opa agradeço ajuda de todos!!! Compartilhar este post Link para o post Compartilhar em outros sites