Executando várias versões do PHP com Homebrew
Um dos desafios de construir soluções no WordPress é trabalhar com os diversos ambientes que cada host oferece.
Ou seja, alguns ainda estão executando versões muito antigas do PHP; outros estão executando versões mais recentes, mas mesmo assim existem variações entre eles.
Caso em questão: estou executando o PHP 7.2 na minha máquina local para desenvolvimento há algum tempo; no entanto, estou atualmente em um projeto onde algumas das dependências da ferramenta de integração contínua oferecem suporte apenas para PHP 7.1.
E como gosto que meu ambiente de desenvolvimento espelhe os ambientes de preparação e produção, acho importante garantir que haja paridade.
Se você estiver usando um gerenciador de pacotes, é muito fácil começar com várias versões do PHP com Homebrew, mas você pode encontrar alguns problemas no que se refere a executá-lo ao lado de Valet.
Várias versões do PHP com Homebrew
Primeiro, você quer ter certeza de que tem o PHP 7.1 instalado. Para fazer isso, basta executar o seguinte comando no seu terminal. Isso instalará o pacote, mas nada mais. Você ainda estará executando qualquer versão do PHP que estiver executando no momento.
$ brew install php@7.1
Depois disso, você precisará dizer ao Homebrew para remover o link simbólico que ele criou para a versão atual do PHP que você está executando e vinculá-lo ao pacote que você acabou de baixar.
Para isso, digite o seguinte comando:
$ brew unlink php && brew link --force php@7.1
Lembra de toda aquela conversa sobre conchas? Você precisará ter certeza de que seu shell – neste caso, Bash – está ciente da versão do PHP que você deseja usar.
export PATH="/usr/local/opt/php@7.1/bin:$PATH"
export PATH="/usr/local/opt/php@7.1/sbin:$PATH"
Em seguida, liste todos os serviços que o brew está executando. Você pode fazer isso digitando o seguinte comando:
$ brew services list
Depois de fazer isso, você verá uma lista dos serviços em execução, bem como a conta na qual alguns deles estão sendo executados.
Se alguns estiverem sendo executados como root, você precisará iniciá-los e pará-los usando sudo ; caso contrário, você pode pará-los e iniciá-los usando seus comandos padrão.
$ sudo brew services stop php
$ sudo brew services stop php@7.1
$ sudo brew services start php@7.1
Depois disso, você provavelmente desejará reiniciar o Valet, pois isso garantirá que o PHP, Nginx e Dnsmasq sejam todos reiniciados.
$ valet restart
Isso deve completar tudo o que você precisa fazer para trocar as versões do PHP.
Verifique seu trabalho
Para verificar se seu servidor web está, de fato, usando a versão mais recente do Nginx, recomendo criar um único diretório (chamo o meu beta), vinculá-lo usando Valet e, em seguida, soltar um arquivo index.php no diretório que inclui o arquivo phpinfo(); chamada de função.
Dessa forma, você pode obter todo tipo de informação sobre seu ambiente.
A partir daqui, você deve ver alguma variação do PHP 7.1 (ou o que quer que você instalou). E se você fizer isso, então você está pronto para ir; caso contrário, você pode precisar ver como desinstalar e reinstalar o Valet novamente.
Mas isso é um passo um pouco extremo, e tudo o que você vê acima deve cuidar disso.

