stephen.news

hypertext, words and more

zshrc

  • This was a long and winding path. Every couple of years I go through the same problem. New PHP version, determine installation method, feverishly Google. Sigh.

    For my own sanity. I thought it was best to record my workflow. I tried installing PHP via a tried-and-true method:

    brew upgrade
    brew install php

    Awesome. Easy enough right? I now should have PHP 7.4 (as of writing it should be 7.4, that is) installed via Homebrew. Yet when I ran php -v the terminal output was infuriating incorrect:

    PHP 7.3.3 (cli) (built: Mar 30 2019 08:43:01) ( NTS )
    Copyright (c) 1997-2018 The PHP Group
    Zend Engine v3.3.3, Copyright (c) 1998-2018 Zend Technologies
        with Zend OPcache v7.3.3, Copyright (c) 1999-2018, by Zend Technologies

    What gives? Why is it still showing the system pre-installed PHP? I Googled and searched for answers frantically to no avail. Then, finally it hit me. My damn .zshrc file. I still have the old installation in my $PATH. To update, I simply removed the old line. Next I added the php keg, so it’s in my $PATH:

    echo 'export PATH=/usr/local/Cellar/php/7.4.9/bin:$PATH' >> ~/.bashrc
    source ~/.zshrc

    I reloaded my shell with source ~/.zshrc and now, when I run php -v I see some results:

    PHP 7.4.9 (cli) (built: Aug  7 2020 19:23:06) ( NTS )
    Copyright (c) The PHP Group
    Zend Engine v3.4.0, Copyright (c) Zend Technologies
        with Zend OPcache v7.4.9, Copyright (c), by Zend Technologies

    Hope this helps someone else who just wanted to install a damn PHP version but may have overlooked their shell configuration “run commands,” after upgrading with Homebrew 🙃