Ontem ( dia 24 de Julho de 2008) é feature freeze para o PHP 5.3, o numero de commits foi alto devido a esse freeze.
Essa versão, mais até mesmo que a 5.2, vai incluir diversas funcionalidades interessantes e a muito
solicitadas, como namespaces e funções lambda. Confira:
- Clousures e lambda functions
Agora podemos fazer algo assim:
<?php
$lambdaFunc = function($name){ echo "Hello " . $name; }
$lambdaFunc(’Lucas’) - Suporte a Namespaces
- Late Static Binding
- Adicionado suporte ao Error Mode Deprecated para Usuarios.
- Possibilidade para tratar Exceçoes em métodos destrutores
- Adicionada constante __DIR__ (diretorio do arquivo)
- Spl agora é extensão oficial e não pode ser desabilitada
- Inumeras novas interfaces e Iteradores de Array na Spl
- E um sem numero de bugs corrigidos
Esta é sem duvida uma das maiores mudanças no ramo 5.3, somente a adiçao do suporte a namespaces, que estava agendado para o PHP 6, demonstra o impacto que esta versão ira trazer aos desenvolvedores.
Dia 31 de Julho esta planejado lançamento do primeiro alpha, e então lançamento em Setembro/Outubro
Antes de PHP 6, planejado para o primeiro trimestre de 2009, podemos ter uma versão intermediaria, o PHP 5.4, mas isso dependera muito se funcionalidades ou parte delas da 5.3 não forem concluidas em tempo.





4 comments ↓
Qual a vantagem dessa lambda function?
Para mim parece a execução de uma função comum, ou será que isso funcionará como uma expecie de delegate? Fazendo array de funções agregadas?
@cristo: lambda functions na maior parte das vezers é estilo de programaçao, na implementaçao PHP, não havera nenhum lugar que necessite somente lambda functions, é apenas uma opçao a montagem dinamica.
Vou detalhar elas assim que sair o alpha 1.
[...] Novidades do PHP 5.3 | Lucas Stephanou Blog (tags: development php) [...]
programar em linguagem que tem este recurso(lambda) não é só um estilo, na verdade, se ele for implemento como o JS, por exemplo, isso permite passar uma funcao como param para outra função e isso em conjunto com namespace me parece muito poderoso, porque o namespace, a grosso modo, vai limitar a area de atuação de uma funcao, assim, passar uma funcao por param em formato de variavel pode não ser apenas um estilo
Leave a Comment