Skip to content

1 de Julho de 2009

2

Download PHP 5.3.0 já saiu

elephpant-elephant-php-logo

Foi lançada a ver­são 5.3.0 do PHP. Segundo a equipa de desen­volvi­mento, esta foi a maior imple­men­tação das ver­sões série 5. Ela traz, além de várias novi­dades, uma porção de bugs foram cor­rigi­dos (mais de 140…).

Algu­mas novi­dades em destaque, são:

Name­spaces

Name­space” é um con­ceito ampla­mente uti­lizado em várias áreas da infor­mática.
Imag­inem um sis­tema oper­a­tivo com dois arquivos com o mesmo nome. Como eles não podem estar den­tro da mesma pasta, certo? Sendo assim, cri­amos links de pas­tas difer­entes para cada um deles.
No PHP seria como criar var­iáveis den­tro de namespaces.

Qual­quer código PHP pode ser colo­cado em name­spaces, mas ape­nas três tipos de código (Class, Funções e Con­stantes) são afec­ta­dos por elas.

A util­i­dade disso é evi­tar prob­le­mas com nomes de var­iáveis do sis­tema ou de pro­gra­mas feitos por ter­ceiros. Tam­bém evita ter que criar nomes lon­gos para os objec­tos para impedir que não haja con­fli­tos com out­ros objec­tos do mesmo nome.

Assim como out­ras funções do PHP (como a header() por exem­plo), os name­spaces devem ser definidos antes de qual­quer echo ou print.

Exis­tem dois tipos de name­spaces: os name­spaces comuns e os sub-namespaces. Veja um exem­plo de declar­ação de name­spaces:
Late Sta­t­icBind­ing

Outra novi­dade é a imple­men­tação do con­ceito de “Late Sta­tic Bind­ing”. Usando Late Sta­t­ics Bind­ings, a res­olução de méto­dos não é feito na classe onde ele foi cri­ado, mas sim de forma hierárquica, seguindo a ordem de exe­cução. Para enten­der mel­hor, veja o exem­plo com­par­a­tivo entre a imple­men­tação que tín­hamos, e a nova possibilidade:

Agora com Sta­tic Bind­ings temos:
GC (Garbage Colector)

Agora é pos­sível armazenar o resul­tado de var­iáveis em cache. Desta forma, mesmo que o estado de sua var­iável mude, é pos­sível recu­perar um valor ante­rior. Veja o exem­plo de uso:

gc_enable (); // activa o cache que irá guardar os resultados

$valor = ‘Primeiro valor’;
echo $valor. ‘‘;
$valor = ‘Segundo valor’;
echo $valor. ‘‘;

$ante­ri­ores = gc_collect_cycles(); // apanha os val­ores ante­ri­ores em cache

$valor = $ante­ri­ores [’valor’] [0]; // apanha a posi­cao 0 da posi­cao de nome ‘valor’

gc_disable($anteriores); // limpa os val­ores apan­hados e desa­loca da memoria

echo $valor . ‘‘;

/*
Esse script irah retornar:

Primeiro valor
Segundo valor
Primeiro valor
*/

?>

Funções Anôn­i­mas

Funções Anôn­i­mas per­mitem criar funções sem um nome especí­fico. Elas são muito úteis quando usadas como parâmet­ros de funções de call­back (como preg_replace_callback), mas podem ter vários out­ras util­i­dades. Veja um exemplo:

Além dessas novas funções, exis­tem alter­ações nos dri­ves de lig­ação com o MySQL, alter­ações de com­por­ta­mento em funções já ampla­mente uti­lizadas como a função ses­sion(), md5(), opendir().

Link para down­load : http://php.net/downloads.php

Fonte: http://samuelcorradi.com.br

Read more from PHP
2 Comments Post a comment
  1. Ago 28 2009

    Pode­ria ter pelo menos citado a fonte:

    http://samuelcorradi.com.br/lancado_oficialmente_o_php_350.html

  2. Filipe Teixeira Nunes
    Set 2 2009

    De facto , não é cos­tume obri­gado pelo aviso já colo­quei a citação com o link para o seu blog.
    Está muito bacano.
    Bons Posts !

Share your thoughts, post a comment.

(required)
(required)

Note: HTML is allowed. Your email address will never be published.

Subscribe to comments

Spam protection by WP Captcha-Free

Bad Behavior has blocked 38 access attempts in the last 7 days.