Março 7th 2008 03:06 am

Criando objetos DateTime a partir de qualquer formato

Devido a reclamações de programadores PHP, sobre as funções strtotime() e date_create() atualmente analisarem apenas string de datas no formato americano, Derick Rethans adicionou uma nova função (date_create_from_format()) e um novo método a classe DateTime (DateTime::createFromFormat()) a release 5.3 do PHP (ainda em desenvolvimento), assim será possível criar objetos do tipo DateTime a partir de outros formatos de data.

O uso é muito simples:

PHP:
  1. <?php
  2. $dt = date_create_from_format( 'd/m/Y', "02/03/2008" );
  3. echo $dt->format( 'd/m/Y' ), "\n";
  4. ?>

O primeiro argumento deverá ser passado o formato da data que é passada no segundo argumento. O retorno será uma instância da classe DateTime, com a data informada no segundo parâmetro da função. Caso o PHP não consiga analisar a data informada a função retornará falsp e será possível recuperar as mensagens de erro a partir do método date_get_last_errors().

PHP:
  1. <?php
  2. $dt = date_create_from_format( 'Y-m-d', "02/03/2008" );
  3. if ( !$dt ) {
  4.       $errors = date_get_last_errors();
  5.       var_dump( $errors['errors']);
  6. }
  7. ?>

fonte: http://www.derickrethans.nl/british_date_format_parsing.php

[]'s

Compartilhe:
  • del.icio.us
  • Google
  • Digg
  • Sphinn
  • Facebook
  • Mixx
  • LinkedIn
  • Live
  • Rec6
  • Technorati
  • TwitThis
1 Estrela2 Estrela3 Estrela4 Estrela5 Estrela (Nenhuma avaliação ainda)
Loading ... Loading ...

1 Comment »

One Response to “Criando objetos DateTime a partir de qualquer formato”

  1. Whois on 16 Abr 2008 at 17:55 #

    Achei teu blog bonitinho pra caralho!

Trackback URI | Comments RSS

Leave a Reply

« Integração contínua com CruiseControl + phpUnderControl | PHP Conference 2008 - Chamada para os trabalhos »