PHP

O que são Extensões no PHP

O que são Extensões no PHP - O PHP é uma linguagem extremamente flexível e permite desenvolver aplicações para os mais variados tipos de problemas dentro do back-end, muito desse poder se deve as extensões do PHP. Nesse artigo vamos ver o que é uma extensão e quais são as mais usadas na linguagem.

O que são Extensões no PHP – Primeiramente o PHP é uma linguagem extremamente flexível e permite desenvolver aplicações para os mais variados tipos de problemas dentro do back-end, muito desse poder se deve as extensões do PHP. Nesse artigo vamos ver o que é uma extensão e quais são as mais usadas na linguagem.

Porque o conceito de extensão no PHP

O PHP é assim uma linguagem vque se volta para desenvolvimento back-end e pode se usar para diversos tipos de aplicações que rodam no servidor, como, aplicações web, APIs e aplicações console. Essas aplicações podem necessitar de diferentes tipos de recursos. Criar todos esses recursos diretamente dentro da linguagem não é uma boa ideia, pois dependendo do recursos a menor parte das aplicações utilizará.

Muitas linguagens de programação pensam que recursos muito específicos não devem fazer parte do conjunto principal da linguagem para isso se criam bibliotecas e frameworks com os recursos mais específicos, mas porque no PHP então temos esse conceito de extensão?

O PHP é primordialmente uma linguagem interpretada. Seu interpretador é escrito na linguagem C, uma linguagem de mais baixo nível comparado com PHP e também muito mais rápida. As extensões do PHP são escritas na linguagem de programação C, assim é possível obter o máximo de desempenho e estender recursos diretamente do core da linguagem.

O PHP também trabalha com conceito de bibliotecas e frameworks. Assim como as outras linguagens, mas eles são escritas na própria linguagem de programação PHP.

Como funcionam as extensões no PHP

As extensões do PHP pensando assim de forma prática, são arquivos gerados a partir da compilação do código desenvolvido em C que se integram a linguagem PHP. Para uma extensão funcionar em nosso ambiente, precisamos colocar o arquivo da extensão dentro da nossa máquina e indicar o caminho no php.ini.

Podemos ver abaixo a sessão de extensões dinâmicas que vem no arquivo php.ini do PHP ao instalar a versão 7.4 para Windows:

;extension=bz2
;extension=curl
;extension=ffi
;extension=fileinfo
;extension=gd2
;extension=gettext
;extension=gmp
;extension=intl
;extension=imap
;extension=ldap
;extension=mbstring
;extension=exif      ; Must be after mbstring as it depends on it
;extension=mysqli
;extension=oci8_12c  ; Use with Oracle Database 12c Instant Client
;extension=odbc
;extension=openssl
;extension=pdo_firebird
;extension=pdo_mysql
;extension=pdo_sqlsrv
;extension=pdo_oci
;extension=pdo_odbc
;extension=pdo_pgsql
;extension=pdo_sqlite
;extension=pgsql
;extension=shmop

Uma vez corretamente indicada a extensão dentro do arquivo de configuração da linguagem, ela fica ativa e nos permite utilizar as funções, classes e métodos que possui.

Um detalhe importante! Muitas extensões são compiladas de forma estática com o próprio PHP e já vêm ativas por padrão quando instalamos, a menos que na hora de compilar o PHP. A pessoa tenha selecionado para não utilizá-la, algo que geralmente não acontece com o executável do PHP que baixamos de repositórios oficiais.

Principais extensões do PHP

Existem extensões para vários tipos de recursos, veja abaixo as principais:

  • Extensões de banco de dados (mysqli, pgsql, srvsql e outras);
  • Extensão PDO para trabalhar com banco de dados e seus drivers;
  • BCMath – Funções Matemáticas de Precisão Arbitrária;
  • Ctype – Funções para verificação de tipo de caractere;
  • Mbstring – Possui recursos para trabalhar com strings em multi byte encoding;
  • OpenSSL – Recursos para trabalhar com OpenSSL;
  • Intl – Recursos para internacionalização de aplicações.

Na documentação tem a lista completa de extensões do PHP. Ao entrar na documentação de uma extensão específica, a documentação informa se ela é compilada estaticamente e já vem ativa por padrão.

Considerações finais

Primeiramente as extensões no PHP são extremamente importante, em muitos casos precisamos ativar as extensões para utilização de frameworks ou bibliotecas específicas, como Laravel e Symfony. Elas também são utilizadas para se conectar aos principais banco de dados do mercado, algo que quase toda aplicação necessita. Além da instalação manual, via arquivo como vimos nesse post, também é possível assim instalar as extensões de outras formas como Pecl ou um gerenciador de pacotes como APT de sistemas baseados em Debian.

Leia também: “Como gerir minha carreira em TI”