Como instalar PHP no Windows + Composer + XDebug

Instalar o PHP pode parecer uma tarefa ardua se você estiver fora do ambiente Linux, principalmente porque, na versão Windows, existem algumas dependências que, se não estiverem presentes podem ocasionar erros como a falta do arquivo MSVCR110.DLL ou parecidos.

Neste artigo, quero mostrar como instalar o PHP no Windows facilmente, sem se preocupar com o problema das dependências dele e já ter tudo funcional logo de cara, além de configurar e deixar o Composer e XDebug funcionais.

Em primeiro lugar, esqueça baixar do site no site oficial, https://windows.php.net/, vamos utilizar um gerenciador de pacotes que, além de instalar TUDO, vai permitir atualizar o PHP facilmente no futuro.

Antes de instalar PHP, uma nota sobre este artigo

Este artigo foi escrito com o intuito de servir como apoio para uma série de artigos que começou com PHP e MVC – Tudo o que você precisa saber, para saber mais sobre essa série ou acompanha-la assine a newsletter.

Este artigo funciona MUITO bem fora do contexto da série.

Conheça o Chocolatey

O Chocolatey é um package manager para Windows, algo como o Apt dos Debians like ou DNF do Fedora, ainda não temos um suporte e quantidade de pacotes tão bom quanto a “concorrência”, mas já resolve MUITOS problemas.

Instalar o Chocolatey é bem simples, basta rodar um comando no CMD ou Power Shell e pronto!

Acesse a página do projeto e clique no menu Install:

https://chocolatey.org/install

Escolha se quer instalar através do Power Shell ou CMD e abra-o em modo administrador (normalmente, clique direito e depois abrir como administrador).

Uma coisa importante a ressaltar é que instalar via Power Shell ou CMD não irá restringir o acesso apenas aquele cliente de linha de comando, eu executo o Chocolatey até no GitBash.

Chocolatey no GitBash

O comando pode demorar um pouco a executar e no final, se não der erro, tente digitar choco.

Se ele retornar uma lista do que você pode fazer, ok, deu tudo certo.

Instalar PHP no Windows

O processo para instalar o PHP é super simples, basta executar um comando:

 choco install php 

Além do PHP, qualquer pacote que você NÃO tenha será instalado, se quiser ver mais informações sobre o que está sendo instalado basta olhar o link oficial:

https://chocolatey.org/packages/php

A versão instalada será a mais rescente, você pode FACILMENTE especificar uma versão do PHP:

choco install php --version 7.2.20

Substitua 7.2.20 pela versão que você quer, lembrando que (no momento que eu escrevo) a versão 7.1 do PHP e anteriores estão TODAS descontinuadas.

Se você quiser instegrar com o Apache ou um servidor web do gênero, saiba que precisará da versão thread safe, essa que é instalada por padrão é a non-thread safe (funciona como um cgi), a thread safe é usada para lidar com multiplos processos.

Para instalar a versão thread safe execute o comando a seguir:

choco install php /ThreadSafe

Atualizar o PHP no Windows

Atualizar o seu PHP também é, relativamente, simples:

choco update php

Relativamente, porque configurações precisam ser refeiras e extensões reinstaladas, vou falar como configurar o PHP no windows na próxima sessão.

Configurar o PHP no Windows

A primeira coisa a fazer é abrir o diretório de instalação do PHP (normalmente em c:/tools/php73 ou a versão do php no lugar de 73) e definir qual o propósito da instalação, se é para ambiente de produção (no servidor final) ou desenvolvimento e localizar o php.ini-{ambiente} e copiar/renomear para php.ini.

  • php.ini-development – desenvolvimento
  • php.ini-production – produção

Agora podemos configurar o PHP.

O importante pra mim aqui são:

  1. Upload de arquivos, porque o limite padrão é muito pouco
  2. Extenções, porque obviamente eu preciso de mais além do que vem no core do PHP
  3. Instalar o XDebug

No meu caso, eu abro o arquivo php.ini no Sublime e pesquiso por upload_max_filesize e altero o valor de 2M (2mb) para 500M, mas dificilmente eu mando algo tão grande, só não quero ter que voltar aqui depois, no servidor de produção, altere esse valor para o mínimo possível para sua necessidade.

Se você tentar enviar um formulário ainda vai ter problemas porque precisa alterar o post_max_size que vem com 8M por padrão, novamente exagero um pouco e coloco 700M.

As extenções ficam em uma lista bem organizada e TODAS comentadas (portanto, inutilizadas), eu pesquiso por ;extension=bz2.

Para ativar uma extenção, remova o ; (ponto-e-virgula) da frente da extenção, estas são as que eu ativo:

  • extension=curl
  • extension=fileinfo
  • extension=gmp
  • extension=intl
  • extension=mbstring
  • extension=mysqli
  • extension=openssl
  • extension=pdo_mysql
  • extension=pdo_pgsql
  • extension=pdo_sqlite
  • extension=soap
  • extension=xmlrpc
  • extension=xsl

No momento não vou entrar no mérito sobre o que cada uma faz ou o motivo de eu ativar, só saiba que é uma configuração que funciona muito bem para mim.

Esta parte do meu arquivo fica assim:

;extension=bz2
extension=curl
extension=fileinfo
;extension=gd2
;extension=gettext
extension=gmp
extension=intl
;extension=imap
;extension=interbase
;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_oci
;extension=pdo_odbc
extension=pdo_pgsql
extension=pdo_sqlite
;extension=pgsql
;extension=shmop

; The MIBS data available in the PHP distribution must be installed.
; See http://www.php.net/manual/en/snmp.installation.php
;extension=snmp

extension=soap
;extension=sockets
;extension=sodium
;extension=sqlite3
;extension=tidy
extension=xmlrpc
extension=xsl

E para finalizar vou instalar o XDebug, o processo é bem simples, seleciono TODO o conteúdo do php.init e copio, na sequência basta acessar:

https://xdebug.org/wizard.php

Colar o conteúdo copiado anteriormente na textarea e clicar no botão Analyse my phpinfo() output e pronto, o site vai me dar um arquivo com versão exata que eu preciso para meu caso, basta copiar, adicionar ao diretório ext DENTRO do diretório do PHP e adicionar no php.ini (eu faço isso no final, você pode colocar onde quiser) os seguintes comandos:

zend_extension = php_xdebug-**.dll
xdebug.remote_enable = 1
xdebug.remote_autostart = 1

Não esqueça de trocar php_xdebug-**.dll pelo nome do arquivo, caso contrário o PHP não vai funcionar, as configurações da segunda e terceira linhas são para as IDEs se integrarem com o XDebug para eu poder debugar meu código.

Variáveis de ambiente

A última configuração que eu faço é ativar o PHP nas variáveis de ambiente, isso fará com que eu possa rodar o PHP em qualquer diretório, MUITO útil pra mim.

Basta apenas abrir as propriedades de sistema do Windows clicando com botão direito sobre Seu Computador e escolher propriedades, na sequência vá em Configurações avançadas do sistema, guia Avançado e por fim Variáveis de ambiente.

Atenção!!! Existe variáveis do usuário e variáveis do sistema, estou falando aqui sobre VARIÁVEIS DO SISTEMA.

Na lista de variáveis, procure por Path e clique em Editar.

Basta adicionar (sem remover nada) o diretório do PHP (no meu exemplo c:/tools/php73), no Windows 10 é uma lista super simples de atualizar, nas versões anteriores era um campo de texto com diretórios separados por ; (ponto-e-virgula), adicione SEM REMOVER NADA.

Se tiver algum CMD, Power Shell ou ferramenta do gênero, feche completamente e abra de novo, por via das dúvidas, reinicie o computador.

Para testar tudo, rode php -v em qualquer diretório que NÃO seja o diretório do PHP.

O resultado final desejado:

PHP instalado

Instalando o Composer

Instalar o Composer é um processo bem simples, tanto que nem demanda um tutorial, rsrs, basta baixar o assistente de instalação direto do site oficial.

https://getcomposer.org/download/

Note que no subtitulo Windows Installer tem Composer-Setup.exe em azul, só clicar em instalar.

Você pode precisar instalar o Git:

https://git-scm.com/

Simples e eficiente, só precisa se localizar. Depois de instalado basta testar:

composer --version

Conclusão ao instalar PHP

Com isso você tem PHP e Composer instalados no seu computador, o PHP roda MUITO bem no Windows, ainda mais no 10, mas é visível o ganho de performance em um ambiente Linux de produção, não quero dizer o contrário ou desincentivar o uso do Linux, mas as vezes a necessidade de um dev na hora da escolha de um sistema operacional são mais complexas ou específicas. Além de que, o PHP ter uma ótima performance no Linux não tira o mérito do Windows, do Mac ou do Erik’s SO – Community Edition.

Aproveite seu PHP.

Autor: erik.figueiredo@gmail.com

Músico, gamer amador, tutor de programação, desenvolvedor freelancer full cycle, com foco em PHP (Laravel e CakePHP), Javascript (Front e Node.js), Dart (Front e Flutter) e infra.

Um comentário em “Como instalar PHP no Windows + Composer + XDebug”

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *