Composer and the php.ini on Mac OS X


is a dependency tool for PHP, a little like the gems for ruby or npm for node.js.

Now when I first try to run it on my mac with the command:

curl -s | php

Fixing the php.ini error

I ran in to the following error:

#!/usr/bin/env php
Some settings on your machine make Composer unable to work properly.
Make sure that you fix the issues listed below and run this script again:

The detect_unicode setting must be disabled.
Add the following to the end of your `php.ini`:
    detect_unicode = Off

A php.ini file does not exist. You will have to create one.

Now the only thing I had to do was to copy the file /etc/php.ini.default to /etc/php.ini and to append the line

detect_unicode = Off

You can do that with one line in your Terminal like this, after doing a quick sudo -s for admin rights:

cp /etc/php.ini.default /etc/php.ini && echo "detect_unicode = Off" >> /etc/php.ini

Alias `php composer.phar` to `composer`

Making it all a little nicer, I’ve also added two lines to my .bash_profile file, so I can write composer instead of php composer.phar:

alias getcomposer="curl -s | php"
alias composer="php composer.phar"

This works on my current setup, which is Mac OS X 10.7.5.

You can take a look at my config files over at my github repository: dotfiles.


Thank you for reading! If you have any comments, additions or questions, please leave them in the form below! You can also tweet them at me

If you want to read more like this, follow me on feedly or other rss readers

One thought on “Composer and the php.ini on Mac OS X”

Leave a Reply

Your email address will not be published. Required fields are marked *