macのhomebrewでPHP5.5の開発環境を作っておりますが、事情により、5.3の環境も必要になりました。

両方のPHPのバージョンを使い分ける方法を教えて下さい。

回答の条件
  • 1人1回まで
  • 登録:
  • 終了:2015/04/24 03:30:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。
id:makocan

レンタルサーバーなどにある、.htaccessで切り替える方法が一番ありがたいです。

回答4件)

id:rafting No.1

回答回数2652ベストアンサー獲得回数176

ポイント50pt

「Vagrant(ベイグラント)」を使った開発環境(仮想マシン)の構築方法
http://gakublog.com/archives/966

id:gizmo5 No.2

回答回数504ベストアンサー獲得回数141

ポイント50pt

phpenv と php-build を使うと複数のバージョンの PHP を管理することができます。
http://qiita.com/y_arakawa/items/8c3b6f2bf7f3e75fd01f
http://bko.hateblo.jp/entry/2013/06/26/093057

id:y-kawaz No.3

回答回数1422ベストアンサー獲得回数226

ポイント50pt

homebrewで管理しているなら brew link/unlink で切り替えするのが良いと思います。
まず、今php55だけが入ってるとしたらbrew install php53をします。但しこの時点ではphp55が使われる状態のままです。

で、切り替えは以下のように行います。

# php53に切り替える
brew unlink php55 && brew link php53

# php55に切り替える
brew unlink php53 && brew link php55

あとは、httpdを起動してたりするんならそちらの再起動も必要かもですね。


また、brew link を実行した時に「XX has multiple installed versions」てエラーが出ることがあるかもしれません。その時は以下を試してみると良いでしょう。

  1. brew ls で出てくるphpバージョンを全部 brew unlink php53 php55 php56 とかで一度全部unlinkしてからもう一度試してみる。
  2. brew update; brew upgrade; brew cleanup を実行してみるマイナーバージョンが複数入ってたりする場合はこれで治ることが多いです。
  3. brew link --overwrite php55 してみる。

後半の手段ほど無理やり感ありますがw


あと、全体のデフォルトを切り替えなくてもphpコマンドを使い分けたいだけなら以下のように絶対パスで指定してやるとかでもよいです。

"$(brew --prefix php55)/bin/php" --version
#PHP 5.5.23 (cli) (built: Mar 23 2015 01:47:37)
#Copyright (c) 1997-2015 The PHP Group
#Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies
id:syamaoka No.4

回答回数21ベストアンサー獲得回数9

ポイント50pt

(質問の要求から外れているでしょうが) phpenv 以外だと

https://github.com/phpbrew/phpbrew

もあります。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません