Archive for Março, 2008

Março 7th 2008

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

1 Comment »

Março 3rd 2008

Integração contínua com CruiseControl + phpUnderControl

"Continuous Integration is a software development practice where members of a team integrate their work frequently, usually each person integrates at least daily, leading to multiple integrations per day. Each integration is verified by an automated build (including test) to detect integration errors as quickly as possible. Many teams find that this approach leads to significantly reduced integration problems and allows a team to develop cohesive software more rapidly."

Neste post pretendo apresentar algumas ferramentas que facilitam a utilização da Integração Contínua, como prática de desenvolvimento de seus projetos.

CruiseControl

O CruiseControl é uma ferramenta que automatiza o processo de build, provendo várias tarefas que facilitam o controle sobre o código, incluindo uma interface para visualizar os detalhes sobre cada build.

phpUnderControl

O phpUnderControl é um plugin para o CruiseControl que facilita a integração de algumas ferramentas voltadas para projetos PHP: phpDocumentor, PHPUnit, PHP_CodeSniffer.

Continue Reading »

7 Comments »