Expressões Regulares com Intervalos Numéricos

Resumo:
Introdução

No artigo sobre Expressões Regulares em PHP, vimos os conceitos básicos sobre expressões regulares. Porém, algo que pode gerar certa confusão é sobre a criação de uma expressão regular que verifique se determinada string é um número presente em um determinado intervalo numérico (range). Neste artigo veremos qual é o problema e é apresentada uma classe que gera a expressão regular de um intervalo numérico.

Caches de Aplicação

Resumo:
Introdução

É muito comum (e útil) aplicações complexas armazenarem algumas informações em cache para diversas finalidades. A mais importante é o rápido acesso a uma informação que tem um custo relativamente alto para ser obtido, seja pelo tempo gasto, consumo de recursos computacionais para se realizar a consulta ou pela quantidade de vezes que se acessa a mesma informação.

Neste artigo, vou mostrar o conceito básico para se montar uma estratégia de cache e algumas exemplos de utilização.

Cuidados ao criar um script de Cron

Resumo:
Introdução

Em 2010, escrevi o artigo Tarefas agendadas via Cron + PHP, que ensinava o básico sobre como montar um script de cron e configurá-lo para que fosse executado com certa periodicidade automaticamente. Hoje, quase 6 anos depois, revolvi escrever mais um artigo sobre o assunto, mas desta vez para compartilhar algumas lições valiosíssimas que devem ser levadas em conta ao se preparar um script de cron.

Observação: as dicas apresentadas neste artigo também valem para a construção de serviços (daemons) em PHP.

Novidades do PHP 7

Resumo:
Introdução

No final de 2015 foi lançado finalmente o PHP 7.0.0, que estabeleceu uma nova "era" para o PHP e deixou as versões 5.X no passado. As versões 5.X (que começaram em 2004) tiveram uma grande importância na história do PHP, embora alguns tropeços também.

O que algumas pessoas podem se perguntar é por que a versão 5.X saltou para 7.X sem passar pela 6.X? Acontece que no passado houve a implementação do que seria o PHP 6. O projeto iniciou em 2005, mas acabou sendo "abandonado" em 2010. Chegaram até a lançar algumas versões alpha ou beta que cheguei a testar, mas a versão final nunca foi lançada por conta da complexidade que agregou ao núcleo do PHP. A feature que gerou toda a confusão foi o suporte nativo a Unicode. Porém, mesmo abandonando a versão 6, os desenvolvedores da linguagem optaram por lançar algumas das outras features previstas nas versões 5.3.X em diante mesmo. Com isso, vimos as versões 5.X terem uma enorme mudança desde o lançamento da versão 5.0.0 até as versões 5.6.X atuais. Afinal, foram mais de uma década desta versão.

Enfim, como o PHP 6 chegou a ser arquitetado e divulgado com um conjunto de features específicas e até artigos e livros sobre o assunto foram publicados (antes mesmo da versão final ser lançada), optaram por saltar esse número na contagem de versões do PHP para evitar confusões. Para mais detalhes sobre isso, você pode ler o RFC sobre o próximo nome do PHP.

Bem, mas estamos aqui para falar de PHP 7. Estou um pouco enferrujado para escrever artigos, mas vamos ver se esse ano volto ao ritmo.

Executando código PHP local em máquina remota

Resumo:
Introdução

No artigo PHP em modo interativo vimos como executar o PHP de forma interativa, ou seja, abrir um "terminal de PHP" e executar comandos sob demanda. Neste artigo, vamos ver como tirar proveito deste recurso de forma que se possa executar um código PHP de sua máquina local em uma máquina remota.

Expressões Regulares em PHP

Resumo:
Introdução

Expressões regulares são expressões que permitem especificar um padrão de string, ou seja, como os caracteres de uma string ficam dispostos em sequência. Com este padrão, é possível realizar checagens para saber se uma string segue determinado padrão, capturar pedaços da string com base no padrão, ou ainda substituir pedaços de uma string por outra sequência de caracteres.

As expressões regulares são um recurso extremamente útil não apenas para PHP, mas para várias outras linguagens, inclusive JavaScript. Porém, como possui uma sintaxe própria, nem todos programadores PHP tem familiaridade em montar ou entender expressões regulares. Neste artigo veremos um compilado de informações úteis para se aprender a usar expressões regulares em PHP.

Timestamp em PHP

Resumo:
Calendário
Introdução

Há algum tempo escrevi o artigo Aritmética de Datas, que mostrava como manipular datas no PHP e realizar operações sobre elas. Porém, embora tenha citado brevemente sobre Timestamp, não explorei tanto o assunto.

Neste artigo, pretendo explicar melhor o que é o Timestamp e como ele é manipulado no PHP. Também vou destacar algumas características importantes, relacionadas ao fuso horário (timezone).

Prevenção de Timing Attack no PHP

Resumo:
Introdução

Timing Attack (ataque baseado em tempo) é um tipo de ataque a sistemas. Ele é pouco conhecido e normalmente é realizado por crackers mais avançados. Neste artigo, veremos o que são estes tipos de ataque e como podem ser prevenidos no PHP.

Desempacotamento de Parâmetros em Funções no PHP (operador splat)

Resumo:
Introdução

No artigo anterior, falamos sobre Funções Variádicas, que ganhou uma sintaxe nova no PHP 5.6. Neste artigo, veremos um recurso adicional e similar, que é o desempacotamento de parâmetros em funções e métodos através do símbolo de reticências. O operador é conhecido em outras linguagens como operador "splat".

Funções Variádicas

Resumo:
Introdução

Uma das novidades do PHP 5.6 é o suporte a uma nova sintaxe para declaração de funções variádicas. Para quem não sabe, funções variádicas (variadic functions) são aquelas que podem receber um número indeterminado de parâmetros. Neste artigo veremos o que são funções variádicas e qual é a nova sintaxe para declará-las a partir do PHP 5.6.

Novidades do PHP 5.6

Resumo:
Introdução

O ano de 2013 terminou e foi marcado pelo lançamento do PHP 5.5, com ótimas novidades. Mas chegou 2014 e, logo no começo do ano, já temos o lançamento da primeira versão ALPHA do PHP 5.6. Isso mesmo! O ciclo de desenvolvimento do PHP parece estar a todo vapor. Além disso, o exame de certificação em PHP já se atualizou e agora as perguntas são baseadas na versão 5.5 do PHP.

Neste artigo, vamos dar uma olhada inicial nas principais características anunciadas para o PHP 5.6, lembrando que esta versão ainda é ALPHA, ou seja, ainda é instável e pode sofrer mudanças até o lançamento oficial da versão 5.6.0. Conforme serão anunciadas as novidades em outras versões ALPHA, BETA e Release Candidate, vou atualizando este artigo para que fique completo.

Namespaces e Resolução de nomes de Classes

Resumo:
Introdução

Recentemente, assisti ao PHPCast episódio 8 e confesso que fiquei um pouco surpreso ao notar que um recurso bem simples introduzido no PHP 5.5 não foi compreendido plenamente por todos participantes. Trata-se de uma nova sintaxe da linguagem que permite a obtenção do nome qualificado de classes. Então, vou mostrar com mais detalhes este novo recurso que, certamente, também deve ser dúvida de muitos programadores.

Threads no PHP com pthreads

Resumo:
Introdução
representação de threads de um processo

Thread é um importante recurso de algumas linguagens de programação, que provê melhoria de performance através da execução de blocos de instruções em paralelo. Por outro lado, ela também exige uma forma própria de pensar na solução dos problemas. Neste artigo, veremos rapidamente o que são threads e um tutorial de como e onde elas podem poderão ser usadas com PHP.

Lançamento do PHP 5.5.0

Resumo:
Introdução
bolo de comemoração do lançamento do PHP 5.5.0

Hoje (20/06/2013) foi lançado oficialmente o PHP 5.5.0, a nova família de versões PHP 5.5.X.

Esta é uma versão estável, portanto é recomendada para uso em servidores em produção. Para baixá-la, acesse a página de download do PHP

Quem acompanhou o blog nos últimos meses já deve estar por dentro das principais novidades. Mas se você perdeu alguma coisa, não se preocupe. Separei novamente uma lista de links para os principais artigos do blog que apresentaram estas novidades da linguagem, em ordem cronológica.

Gerar gráficos em PHP com o Google Charts

Resumo:
Exemplo de Gráfico de Torta
Introdução

Em 2011, escrevi o artigo "Criando Gráficos com o Google Chart e PHP", que mostrava como gerar gráficos através da passagem de parâmetros para URL de geração de gráficos provida pelo Google. Porém, este recurso foi depreciado em abril de 2012 e aparentemente renomeado para "Image Charts" (uma seção do Google Charts).

Neste artigo, veremos o funcionamento do novo Google Charts e quais suas vantagens e desvantagens em relação ao recurso depreciado.

Ordenação de Arrays em PHP

Resumo:
Introdução

Ordenação de arrays é um tema muito simples, mas que também gera muitas dúvidas na comunidade de PHP. Neste artigo, veremos desde uma ordenação simples de arrays usando a função sort até as formas mais sofisticadas, envolvendo matrizes ou regras de comparação específicas.

Abrir sessões em PHP de forma econômica

Resumo:
macaco pensando
Introdução

No artigo Utilizando Sessões em PHP de forma inteligente, foi apresentado o funcionamento das sessões em PHP e algumas estratégias de como fazer bom uso das sessões. Neste artigo, veremos um outro detalhe muito importante, e que não foi citado no primeiro artigo. Trata-se da abertura de sessões de forma econômica, ou seja, apenas quando necessário.

Último Beta do PHP 5.5.0

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.

Hoje foi lançado o PHP 5.5.0 BETA 4, que provavelmente será o último BETA do PHP 5.5.0. Para baixar esta versão de teste, acesse: Anúncio do PHP 5.5.0 BETA 4.

Os próximos lançamentos provavelmente serão de Release Candidates. A primeira é prevista para 9 de maio (2013). Após as Release Candidates teremos finalmente a versão final e estável para uso.