Indução de tipos com PHP – Instalando o Spl_Types

Esse artigo é continuação de como tornar seus scripts fortemente tipados com php. A primeira parte você pode ler aqui: Indução de tipos com PHP.


Nesta segunda parte do artigo vamos demonstrar para aqueles haters que já discutimos, como tornar o PHP melhor do que já é.

Já tem algum tempo que temos como tornar nossos scripts fortemente tipados com php, porém, isso não vem como padrão. Para tal necessitaremos de uma extensão, a SPL_Types. Na documentação da extensão temos a sua descrição que não poderia ser melhor, ela ajuda a tornar seus scripts a serem fortemente tipados.

Como já vimos na primeira parte desse artigo, o php nos oferece duas opções por padrão de indução de tipos, são eles arrays e instâncias. Com essa extensão ganhamos todas as outras que queríamos Strings, Inteiros, Booleanos, Pontos Flutuantes e Enumeráveis. Antes de continuarmos é preciso saber uma coisa. Até o momento que escrevia esse artigo a extensão estava marcada como experimental no repositório PECL, então não se assuste se acontecer algum bug, apesar de ter testado a extensão ad nauseam, nunca se sabe.

Como ela é uma extensão PECL, precisaremos fazer a instalação em nossa máquina. Primeiramente tentei recorrer ao pacote pecl para instalar, mas tive um problema, e depois de ver que há sim diferença entre o que é liberado por quem cuida da extensão e a versão estável disponível na página do pacote, resolvi fazer tudo passo a passo. O erro que consegui fazendo do jeito fácil foi o abaixo:

Então fui para a versão difícil da instalação do pacote. Os próximos passos consistem em fazer o que o comando acima fez, só que de outra fonte. Primeiramente vamos buscar os arquivos do pacote em seu repositório oficial. Aqui, todas as ações que faço costumo fazer dentro do diretório /tmp, mas fique tranquilo para fazer onde quiser. Nosso próximo passo exige um pacote específico o subversion, use o comando abaixo para instalar.

Agora que já temos o subversion instalado, vamos buscar os arquivos do pacote.

Com os arquivos necessários dentro do diretório spltypes, o nosso próximo passo é transformá-lo em uma versão compilável e instalável. A ferramenta phpize faz isso para nós, ele está dentro do pacote php5-dev no ubuntu, vamos instalar com o comando abaixo.

Após instalar o pacote, o nosso próximo passo é utilizar o phpize na pasta spltypes, como abaixo:

Agora com nossa extensão para ser instalada, vamos configurar, compilar e instalar com os comando abaixos:

Após isso, nosso último passo é habilitar a extensão. Para tal, vamos criar um arquivo de configuração para a extensão com o comando abaixo:

Reinicie seu apache e veja em seu phpinfo() se a nova extensão foi carregada. Para fazer isso de uma forma rápida pelo terminal, utilize o comando abaixo:

No próximo parte e final desse artigo, vou falar como usar essa extensão a seu favor! See Ya!