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 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.

Instalando Chocolatey

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 e configurado

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 *