2019年9月現在、PHPは7系(最新は7.3)を使うことが一般的ですが、たまにレガシー案件などでPHP5系を使ったりすることはあります。
まあ7系でも7.0じゃ動かないとか色々な制約あるんですけど・・・
その時にローカルでの環境構築が色々大変だったので、手法別にメモしておきます。
どの手法もそれぞれめんどいです(汗)
phpenv+phpbuild
別バージョンのPHP自体を自分のローカル環境に入れる方法です。コマンドラインやバッチ系のみであればこれが楽かもしれません。
難点としてはPHPの場合、画面から確認するケースがほとんどなのでapacheの設定もいじらないといけないことやその他のライブラリのバージョン状態も影響してくるのでその時にこけることが結構あったりします。
参考リンク
phpenv+php-build 複数のPHPのversionを使いわけ
Vagrant+Virtualbox
昔からある仮想環境構築ツールです。現在のパソコンの中に別OSを入れるようなものですので、外部は一切干渉を受けません。
その開発環境のvagrantイメージを持っている方などがいる場合にはこれを入れれば最短で環境構築が可能です。
その場合、開発が楽ですし、内部での影響を一切受けないのですが、メモリ+HDをかなり使います。メモリは2Gぐらいが一般的ですかね。
HDはvagrantイメージにもよりますが、5〜10Gぐらいを使うことが多いため、複数のvagrantを入れておくなどはあまり現実的出ないかもしれません。私は2つ入れた時点で容量オーバー寸前まで行きました。
メモリ自体が2Gと少ないことが多いので大きいメモリを食うような処理だと止まることもあります。特にcomposerでのインストールで何度か痛い目にあいました(汗)。
参考リンク
docker
vagrantとは違った仮想環境ツールです。
vagrantのようにPC全体でなく、ミドルウェアの仮想化の部分らしいので、かなり軽量です。(数秒で起動可能)
HDの容量もvagrantほど食いませんので複数の環境をガンガン入れたりすることは可能ですし、色々なバージョンのテンプレートのようなものが結構用意されているので目的の環境を復元できます。
ただ学習コストがやや高く、慣れるまで結構難しい印象です。メモリ自体も小さいのでメモリをかなり使うような作業だと止まります・・・
参考リンク