Dia da semana, mês e ano em português utilizando PHP

Calendário dia 7
  • 10 de Mai de 2013
  • 22140 Visualizações
  • 17 Comentários

Uma simples dica de como pegar o dia da semana, mês e ano em português usando PHP. Essa dica eu nem vou precisar comentar o código, pois é muito simples. Quem não entender, sugiro ler a documentação do PHP usando o date.

<?php
    $data = date('D');
    $mes = date('M');
    $dia = date('d');
    $ano = date('Y');
    
    $semana = array(
        'Sun' => 'Domingo', 
        'Mon' => 'Segunda-Feira',
        'Tue' => 'Terca-Feira',
        'Wed' => 'Quarta-Feira',
        'Thu' => 'Quinta-Feira',
        'Fri' => 'Sexta-Feira',
        'Sat' => 'Sábado'
    );
    
    $mes_extenso = array(
        'Jan' => 'Janeiro',
        'Feb' => 'Fevereiro',
        'Mar' => 'Marco',
        'Apr' => 'Abril',
        'May' => 'Maio',
        'Jun' => 'Junho',
        'Jul' => 'Julho',
        'Aug' => 'Agosto',
        'Nov' => 'Novembro',
        'Sep' => 'Setembro',
        'Oct' => 'Outubro',
        'Dec' => 'Dezembro'
    );
    
    echo $semana["$data"] . ", {$dia} de " . $mes_extenso["$mes"] . " de {$ano}";
?>

 Tem alguma forma mais fácil? É só comentar.

TAGS: php, dia da semana, mês, ano, tiagomatosweb

Deixe um comentário


17 Comentários

    • Obrigado Tiago. Até é que não entendo quase nada de Php consegui entender. :)

      • Valeu Arlei! O propósito é este! \o/

    • Obrigado Funcionou Perfeitamente!

      • Show de bola everton!

    • setlocale(LC_ALL, 'pt_BR', 'pt_BR.utf-8', 'pt_BR.utf-8', 'portuguese');
      date_default_timezone_set('America/Sao_Paulo');

      echo strftime('%A, %d de %B de %Y', strtotime('today'));

      # %A: dia da semana por extenso.
      # %d: dia do mês representado com dois digitos.
      # %B: mês por extenso.
      %Y: ano representado com quatro digitos.

      • Olha aí a dica do Matheus!!! Eu nem testei aqui, mas já autorizei o comentário ir pro ar!

        Faço um teste rápido assim que tiver tempo! Se alguém testar, coloca os resultados. 

        Obrigado Matheus pela sua colaboração!

    • Para quem quer a data bem declarada, com o bom português, sem abreviações, esse é o código ideal. Muito bem feito, obrigado por compartilhar!

      • Obrigado Robson!

    • Cara muito bem lembrado! Codigozinho parecido com Java Script! Tks

      • Show de bola Sergio. Apareça sempre que puder! Abs.

    • Pode ser usado preg_replace também, exemplo:
      $semana = array(
      'en' => array('/Sun/', '/Mon/', '/Tue/', '/Wed/', '/Thu/', '/Fri/', '/Sat/' , '/Jan/', '/Feb/', '/Mar/', '/Apr/', '/May/', '/Jun/', '/Jul/', '/Aug/', '/Sep/', '/Oct/', '/Nov/', '/Dec/'),
      'short' => array('Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sab', 'Jan', 'Fev', 'Mar', 'Abr', 'Mai', 'Jun', 'Jul', 'Ago', 'Set', 'Out', 'Nov', 'Dez')
      );
      $str = "A data de hoje é: " . date("D d M Y");
      echo preg_replace($semana['en'], $semana['short'], $str);

      Resultado: A data de hoje é: Ter 30 Set 2014

      • Olá Basilio, obrigado pela contribuição e deixar o tema mais rico! Apareça sempre!

    • Foi muito bom ter encontraco o seu site. bwe fixe!!!!!

    • coloca isso no começo do codigo

      date_default_timezone_set('America/Sao_Paulo');

      • Boa, bem lembrado!

    • Faltou sexta-feira na semana.

      • Boa observação! Já corrigido e obrigado!