- 2012-05-25 (金) 13:00
- PHP
Mac OS X に PHP5.4 を簡単に入れる方法です。
PHP5.4 使っていますか?
5.4 で実装されたビルトインサーバや traits、short array syntax などの新機能を試してみたい!でも 5.4 をインストールするのが面倒だなあ、というあなた、朗報です。
「PHP 5.3/5.4 for OS X 10.6/10.7 as binary package」というパッケージを使うと、簡単に PHP5.4 をインストールできます。
PHP5.4をインストール
方法は簡単。下記のコマンドを実行するだけです。
$ curl -s http://php-osx.liip.ch/install.sh | bash -s 5.4
実行するとパッケージのダウンロードが始まりますので、しばらく待ちます。インストール処理で sudo を使っているので、パスワードが求められる場合があるので、パスワードを入力して進めて下さい。
はい、これで完了です。/usr/local/php5 以下に PHP5.4 がインストールされます。
$ /usr/local/php5/bin/php -v PHP 5.4.2 (cli) (built: May 8 2012 09:48:57) Copyright (c) 1997-2012 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies with Xdebug v2.2.0rc2, Copyright (c) 2002-2012, by Derick Rethans
ビルトインサーバもバッチリ動きます。
$ /usr/local/php5/bin/php -S 127.0.0.1:8000 PHP 5.4.2 Development Server started at Thu May 24 14:51:35 2012 Listening on 127.0.0.1:8000 Document root is /path/to Press Ctrl-C to quit.
php.ini
php.ini ファイルは /usr/local/php5/lib/php.ini です。また、拡張毎の差分 ini ファイルが /usr/local/php5/php.d/ 以下にあります。
設定を変更する際は php.ini を直接変更するのではなく、新たに差分 ini ファイルを作成して変更箇所だけを記載するのが良いでしょう。
デフォルトでは timezone が Europe/Zurich になっているので、Asia/Tokyo に変更してみましょう。下記では、/usr/local/php5/php.d/99-my.ini というファイルを作成して timezone を Asia/Tokyo に変更しています。
$ sudo vim /usr/local/php5/php.d/99-my.ini date.timezone = Asia/Tokyo $ /usr/local/php5/bin/php -i | grep timezone Default timezone => Asia/Tokyo date.timezone => Asia/Tokyo => Asia/Tokyo
拡張モジュール
インストール拡張モジュールは以下です。かなり色々はいってますね。
$ /usr/local/php5/bin/php -m [PHP Modules] bcmath bz2 calendar Core ctype curl date dom ereg exif fileinfo filter ftp gd gettext hash iconv igbinary imap intl json ldap libxml mbstring mcrypt memcache mhash mongo mssql mysql mysqli mysqlnd OAuth odbc openssl pcntl pcre PDO pdo_dblib pdo_mysql pdo_pgsql pdo_sqlite pgsql Phar posix Reflection session shmop SimpleXML soap sockets solr SPL sqlite3 standard sysvmsg sysvsem sysvshm tidy tokenizer uploadprogress wddx xdebug xhprof xml xmlreader xmlrpc xmlwriter xsl zip zlib [Zend Modules] Xdebug
apc, twig, xslcach もインストールはされていますが、読み込まれていない状態になっています。必要であれば差分 ini ファイルを変更して有効にして下さい。
$ sudo vim /usr/local/php5/php.d/99-my.ini date.timezone = Asia/Tokyo # ↓を追加する extension=/usr/local/php5/lib/php/extensions/no-debug-non-zts-20100525/apc.so $ /usr/local/php5/bin/php -m | grep apc apc
OS X 標準 Apache の mod_php を元に戻す
このパッケージをインストールすると OS X 標準の Apache の mod_php も PHP5.4 に置き換わります。5.4ではなく、既存の PHP を使う場合は以下の手順で設定を戻して下さい。
$ sudo rm /etc/apache2/other/+php-osx.conf $ sudo vim /etc/apache2/httpd.conf # LoadModule php5_module libexec/apache2/libphp5.so <--- コメントアウトを解除する LoadModule php5_module libexec/apache2/libphp5.so $ sudo /usr/sbin/apachectl restart
PHP5.4をアンインストール
インストールした PHP5.4 をアンインストールする時は、上記「OS X 標準 Apache の mod_php を元に戻す」手順を行ったあとに /usr/local/php5* と /usr/local/packager を削除するだけです。
$ sudo rm -rf /usr/local/php5* $ sudo rm -rf /usr/local/packager
気軽にインストールできるPHP5.4
PHP5.4をインストールする方法としては、ソースからのビルド、MacPorts や Homebrew などのパッケージシステムからインストールするなど多くの方法があるのですが、どれもビルド環境を整えたり、パッケージシステム自体を入れる必要があるなど、ひと手間かかります。
この「PHP 5.3/5.4 for OS X 10.6/10.7 as binary package」であれば、PHP自体を入れるだけ(正確には packager という小さなパッケージシステムが一緒に入ります)なのでとても簡単ですし、元からインストールされている PHP への影響がないので、元のバージョンに戻すのも簡単です。
PHP5.4 を導入するのに躊躇している人、一度試してみて下さい。