Utilizando as exceptions da SPL do PHP

Resumo:
Introdução

No artigo Try Catch Finally, vimos sobre o conceito de exceptions e seu funcionamento no PHP (onde/como são emitidas e onde/como são capturadas). Neste artigo, veremos sobre a correta utilização das exceptions definidas pela extensão SPL, então, se você ainda não conhece bem o conceito, recomendo a leitura daquele outro post antes de continuar.

Infelizmente, a documentação destas exceptions não deixa muito claro os possíveis pontos em qua cada uma pode ser usada. Portanto, as recomendações que faço são com base naquilo que compreendi da documentação.

PHP 5.5.0 Alpha 4

Resumo:
Introdução

Atenção: o PHP 5.5 foi lançado em 20/06/2013. Confira as últimas notícias sobre o Lançamento do PHP 5.5.0.

Nos últimos posts, vimos algumas novidades do PHP 5.5 Alpha 1, Alpha 2 e Alpha 3. Hoje, finalmente, foi lançada a última versão alpha do PHP 5.5.0 e, portanto, são as últimas novidades a serem inseridas.

PHP em modo interativo

Resumo:
Introdução

Embora o PHP seja especialmente criado para atender requisições Web, ele também pode ser executado em um terminal de comandos (prompt), através do php cli. Pelo terminal, podemos executá-lo de diferentes formas e, neste post, veremos quais são elas.

PHP 5.5.0 Alpha 3

Resumo:
Introdução

Atenção: o PHP 5.5 foi lançado em 20/06/2013. Confira as últimas notícias sobre o Lançamento do PHP 5.5.0.

Em novembro de 2012, postei sobre o lançamento do PHP 5.5.0 Alpha 1, em dezembro de 2012, foi lançada a versão PHP 5.5.0 Alpha 2 e, hoje (10/01/2013) foi lançada a versão PHP 5.5.0 Alpha 3. Esta nova versão também recebe algumas poucas novidades e principalmente algumas correções.

PHP 5.5.0 Alpha 2

Resumo:
Introdução

Atenção: o PHP 5.5 foi lançado em 20/06/2013. Confira as últimas notícias sobre o Lançamento do PHP 5.5.0.

Em novembro de 2012, postei sobre o lançamento do PHP 5.5.0 ALPHA 1, que daria início à família de versões 5.5.X. Porém, dia 21 de dezembro foi disponibilizada a versão ALPHA 2, com outras melhorias. De fato, na ocasião fiquei em dúvida se seriam apenas aquelas melhorias para o PHP 5.5.0, mas agora já sabemos que a lista de melhorias ainda pode crescer, enquanto está em fase alpha.

Montando seletores CSS eficiêntes

Resumo:
Introdução

Recentemente, li o artigo How to write efficient css selectors (Como escrever seletores CSS eficiêntes) e aprendi que os seletores descendentes do CSS na verdade são avaliados da direita para a esquerda e não da esquerda para direita, como eu imaginava. Este é um pequeno detalhe, mas que faz toda a diferença na hora de montar seletores CSS de forma eficiênte para que o navegador renderize uma página com alta performance.

Neste artigo, vamos entender melhor como funciona esse processo de aplicação dos estilos pelas folhas de estilo e debater sobre a criação de seletores CSS eficiêntes.

Servidor HTTP nativo no PHP

Resumo:
Introdução

Embora possa ser usada para outros propósitos, a linguagem PHP é recheada de recursos especialmente úteis para o desenvolvimento de aplicações Web. Porém, uma aplicação Web dinâmica depende também de um servidor HTTP, que recebe as requisições do user-agent e, caso necessário, solicita que o PHP realize algum processamento para gerar um documento, que é retornado para o user-agent.

Os servidores HTTP mais comuns para PHP são o Apache, que é multiplataforma, e o IIS, da Microsoft. Logo, para testar ou utilizar qualquer aplicação web feita em PHP, é necessário instalar também um servidor HTTP e configurá-lo para se comunicar com o PHP.

Porém, na versão 5.4 do PHP, foi criado um servidor HTTP dentro do próprio pacote de recursos da linguagem PHP. Embora seja um servidor simplificado, que não foi projetado para aceitar altíssimas cargas, ele realiza as operações esperadas de um servidor HTTP e, portanto, é útil para testes locais.

Generators no PHP 5.5

Resumo:
Introdução

Uma das mais importantes novidades do PHP 5.5 foi o suporte aos generators. Esta novidade permite a criação de alguns tipos de iteradores de forma muito mais fácil e intuitiva.

Já comentei sobre iteradores no artigo As interfaces Iterator, ArrayAccess e Countable. Porém, vou apresentar rapidamente o conceito para quem ainda não o conhece.

API para hash de senhas no PHP 5.5

Resumo:
Introdução
cadeado

No artigo Autenticação e criptografia de senhas, vimos os mecanismos que a linguagem PHP oferece para gerar hash, especialmente para armazenamento seguro de senhas, além do processo de conferência de um hash com a senha real. Porém, até então não existia uma padronização sobre este processo. Com isso em vista, a equipe de desenvolvimento do PHP implementou uma API para geração de hash de senhas.

Este artigo irá apresentar esta, que é uma das novidades do PHP 5.5.

Try Catch Finally em PHP

Resumo:
Introdução

Dando continuidade aos artigos relacionados às novidades do PHP 5.5, este artigo irá abordar sobre o suporte ao bloco "finally" nas estruturas try/catch/finally do PHP.

Porém, antes de apresentar o novo recurso ("finally"), vou contextualizar o assunto de Exceptions para os leitores que ainda não o conhecem.

Derreferenciamento de arrays e strings constantes no PHP

Resumo:
Introdução

No artigo anterior, postei sobre o anúncio do PHP 5.5.0 alpha, citando as novidades da futura versão do PHP. Neste artigo, veremos sobre a melhoria "Derreferenciamento de arrays e strings constantes" (constant array/string dereferencing). Não se assuste com o nome, pois é uma melhoria simples de entender.

Novidades do PHP 5.5.0

Resumo:
Introdução
bolo de aniversário para o PHP 5.5.0 alpha

Atenção: o PHP 5.5 foi lançado em 20/06/2013. Confira as últimas notícias sobre o Lançamento do PHP 5.5.0.

No dia 15/11/2012 foi disponibilizada a versão alpha do PHP 5.5.0, que dará início à nova geração de versões do PHP, a geração "5.5.x". E, para o incremento da versão secundária da linguagem, vieram várias melhorias notáveis. Neste post, vou apenas citar quais são as melhorias e, nos próximos posts, pretendo aprofundar nos tópicos mais interessantes.

Se você quiser baixar esta versão e testá-la, você pode acessar o link PHP QAT Web Page. Note que, junto com esta versão alpha, também foi lançada a Release Candidate do PHP 5.4.9, já que a geração 5.4.x ainda terá suporte por um tempo considerável.

Manipulando o cabeçalho de resposta HTTP pelo PHP

Resumo:
Introdução

Neste artigo, veremos como utilizar a função header do PHP e algumas aplicações práticas. Embora header seja uma função importantíssima da linguagem e também seja muito usada, nem sempre os programadores sabem seu funcionamento exato. Além disso, veremos alguns erros comuns cometidos ao usar a função.

Se você é um programador PHP iniciante e acredita que a função header sirva apenas para redirecionar o usuário de uma página para outra nos seus sites em php, então leia este artigo e entenda em detalhes o que você está fazendo.

Traits no PHP 5.4

Resumo:
Introdução

O PHP 5.4 já está disponível desde março/2012 e uma de suas grandes novidades em relação à Programação Orientada a Objetos foi a introdução de um novo recurso chamado "Traits". Neste artigo veremos o que é uma trait, para que ela serve e como usá-la.

Trabalhando de acordo com a Localidade em PHP

Resumo:
Introdução

Muitas aplicações web possuem uma área de abrangência bastante restrita, normalmente aos usuários de uma entidade ou pessoas de um país. Porém, também existem aplicações mais globais, usadas por pessoas de diferentes países e que possuem notações próprias para trabalhar com palavras e números.

A questão da internacionalização de uma aplicação envolve várias tarefas, como a tradução dos termos utilizados, possíveis reformulações de layout, e a aplicação de regras relacionadas à localidade. Neste artigo vamos tratar especificamente desta última, que são as regras relacionadas à localidade.

Hijax - Ajax não obstrutivo

Resumo:
Introdução

Recentemente vi uma apresentação de slides cujo título era Hijax - Progressive Enhancement with Ajax (Hijax - Melhoria Progressiva com Ajax). Por abordar um tema muito interessante, resolvi compartilhar sobre o assunto aqui no blog.

O termo "Hijax" foi proposto por Jeremy Keith, e tem como princípio o planejamento/implementação de soluções com Ajax de forma acessível e não obstrutiva, ou seja, a aplicação se mantém funcional em navegadores com ou sem JavaScript habilitado ou disponível. Embora o tema esteja intimamente relacionado à acessibilidade, ele representa apenas a prática da organização de um documento HTML da forma como deveria ser feito em toda web.

Output Buffer do PHP e os mistérios do echo (parte 2)

Resumo:
Introdução

No artigo anterior, vimos uma introdução sobre o Output Buffer do PHP, com seus conceitos básicos e uma aplicação prática do recurso. Neste artigo, veremos a continuação do assunto, nos aprofundando em conceitos mais complexos e algumas aplicações práticas mais avançadas.