Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
How to install Composer globally using MAMP's PHP

##Create an alias to MAMP's PHP installation

To do this, we can simply create an alias for our bash profile. We'll be doing this is nano, though you can do it in vim or a number of other editors as well.

Within the terminal, run:

nano ~/.bash_profile

This will open nano with the contents, at the top in a blank line add the following line:

alias phpmamp='/Applications/MAMP/bin/php/php5.4.10/bin/php'

This will create an alias, phpmamp, so that you can take advantage of the MAMP installation of PHP. Please take note of the PHP version, in this case 5.4.10, as with different versions of MAMP this may be different. Check your installation and see what version you have, and replace the number accordingly (this was written with MAMP version 2.1.2).

With that setup, we are ready to install composer. This is a two step process if we would like this to be installed globally, while you would only need to do the first step if you would like this installed to the local working directory only.

First, run the following command in the terminal:

curl -sS https://getcomposer.org/installer | phpmamp

Note that instead of the standard 'php' at the end, we are using 'phpmamp' so that we correctly use the MAMP installation of PHP.

Next, we want to make this available globally, so we need to move the file to '/usr/local/bin/composer'. To do this, run the following command:

sudo mv composer.phar /usr/local/bin/composer

Terminal will ask you for yor password, after entering it and pressing the 'return' (or enter) key, you'll have a working global installation of composer on your mac that uses MAMP!

You can verify your installation worked by typing the following command:

composer

It'll show you the current version and a list of commands you can use!

@mosaabramadan
Copy link

thanks alot

@patovd
Copy link

patovd commented May 18, 2022

In Mac OS, if you get this error

zsh: command not found: phpmamp
curl: (23) Failure writing output to destination

You can fix running this command after create the alias:

source ~/.bash_profile

So, run the curl command.

@hanskuiters
Copy link

hanskuiters commented Oct 11, 2022

On Mac OS Monterey I get this error:
php: No such file or directory

This is my .bash_profile:
alias phpmamp="/Applications/MAMP/bin/php/php8.0.8/bin/php"
alias composer="/usr/local/bin/composer"
export PATH="/Applications/MAMP/bin/php/php7.1.8/bin:$PATH"

MAMP 6.6 with php version 8.0.8.

Any idea to fix this?

Edit: I found the answer.

OSX Monterey has no php by default. You have to tell terminal to use MAMP php. To do that, add this to .bash_profile:
PATH=/Applications/MAMP/Library/bin:/Applications/MAMP/bin/php/php7.1.12/bin:$PATH
and then: source ~/.bash_profile to load the new settings.

@fortsev
Copy link

fortsev commented Nov 14, 2022

On Mac OS Monterey I get this error: php: No such file or directory

This is my .bash_profile: alias phpmamp="/Applications/MAMP/bin/php/php8.0.8/bin/php" alias composer="/usr/local/bin/composer" export PATH="/Applications/MAMP/bin/php/php7.1.8/bin:$PATH"

MAMP 6.6 with php version 8.0.8.

Any idea to fix this?

Edit: I found the answer.

OSX Monterey has no php by default. You have to tell terminal to use MAMP php. To do that, add this to .bash_profile: PATH=/Applications/MAMP/Library/bin:/Applications/MAMP/bin/php/php7.1.12/bin:$PATH and then: source ~/.bash_profile to load the new settings.

Thanks!

@StonehengeCreations
Copy link

If you hard code the file path to a specific PHP version, composer and macOS will use that. Easy check in Terminal is: php -v.
To check which php file is used outside of MAMP: which php.

To prevent the need to edit your bash profile every time you update the PHP version in MAMP, you can call the latest installed PHP version dynamically:

PHP_VERSION=`ls /Applications/MAMP/bin/php/ | sort -n | tail -2 | head -1`
export PATH=/Applications/MAMP/bin/php/${PHP_VERSION}/bin:$PATH

@appinlet
Copy link

PATH=/Applications/MAMP/Library/bin:/Applications/MAMP/bin/php/php7.1.12/bin:$PATH

This helped me

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment