記事の内容やaishipシリーズに関するお問い合わせはこちらから

0120-173-163 お電話

[電話受付時間]平日9:30〜19:00

TOP

CATEGORY

SERVICE

phpenvを使ってPHPのバージョンを簡単に切り替えよう

  • 2015.11.12
  • 2018.01.05
  • 技術
phpenvを使ってPHPのバージョンを簡単に切り替えよう

phpenvを使ってPHPのバージョンを簡単に切り替えよう

こんにちは。開発部まつおかです。

PHP7がまもなくリリースということで、、、PHP7について話したいところではあるのですが、まだ記事にできるほど調査できていない部分もあります。

https://wiki.php.net/todo/php70

ですので今回は少し横道にそれますが、PHPバージョンの切り替えツールの「phpenv」について紹介しようと思います。

phpenv+php-build導入

php-buildでphpをビルドしphpenvで切り替える、といった形になります。
(今回は、php-buildはphpenvのプラグインとして使用します)

前提事項

  • CentOS(手順を確認したのは、CentOS6.5)
  • Gitインストール済み
  • rbenvが入っていない(rbenvが入っていた場合、少しだけ変わるので)

phpenvのインストール

下記のコードでphpenvをダウンロードします。

git clone https://github.com/laprasdrum/phpenv.git ~/.phpenv

.bashrcに下記を追加しましょう。(.bashrcはホームディレクトリに存在します。)

# phpenv settings
export PATH="$HOME/.phpenv/bin:$PATH"
eval "$(phpenv init -)"

.bashrcの変更内容を適用します。

source ~/.bashrc

php-buildのインストール

phpenvのプラグインとして使うので、ダウンロードするだけでOKです。

git clone git://github.com/CHH/php-build.git ~/.phpenv/plugins/php-build

必要なツール、ライブラリのインストール

yumでインストールできるもの

sudo yum install -y libxml2-devel openssl-devel libcurl-devel libjpeg-devel libpng-devel libmcrypt-devel readline-devel libtidy-devel libxslt-devel

bison-2.7のインストール
※いろいろ調べましたが、2.7より新しいバージョンではエラーが出るようです

cd /usr/local/src
wget http://ftp.gnu.org/gnu/bison/bison-2.7.tar.gz
tar zxvf bison-2.7.tar.gz
cd bison-2.7
./configure
make
make install

re2cのインストール

cd /usr/local/src
wget http://downloads.sourceforge.net/project/re2c/re2c/0.14.3/re2c-0.14.3.tar.gz
tar zxvf re2c-0.14.3.tar.gz
cd re2c-0.14.3
./configure
make
make install

phpenvでPHPのインストール

■基本のインストールコマンド

phpenv install [バージョン] 

ちなみにインストール可能なバージョン一覧は下記で表示することができます。

phpenv install -l

試しに5.6.14を標準インストールしてましょう。

PHP5.6.14のインストールをします。
※非常に時間がかかります。

phpenv install 5.6.14

インストール後に下記コマンドを実行して更新します。

phpenv rehash

インストール済みバージョンの確認します。

phpenv versions

すると、下記のように出力されるかと思います。
上記で指定したバージョンのインストールができていれば成功です。

[root@vagrant-centos65 ~]# phpenv versions
*system
 5.6.14

では実際に切り替えてみましょう。
(今回はglobalで切り替えを行います)

phpenv global 5.6.14

確認すると、、、

[root@vagrant-centos65 ~]# phpenv versions
 system
*5.6.14

*が「system」から「5.6.14」に変わったので、切り替えできていますね。
このように、使いたいバージョンをインストールして切り替える
ということが簡単にできるようになります。

参考にさせてもらった記事

phpenvが動かないのなら作りなおせばいいじゃない

CentOS 6 の環境にPHP7をインストールしてApacheで動かすまで

終わりに

切り替えまで少しやることは多いですが、一度インストールしてしまえば切り替えが容易にできるという非常に便利なツールです。私も、これを使ってPHP7のalphaやbeta,RC版などでちょこちょこっと触ってみたりもしています。

もし興味があれば、一度試してみてはいかがでしょうか。

おまけ:5.6.14の標準インストールでの対応モジュール

[PHP Modules]
bcmath
Core
ctype
curl
date
dom
ereg
exif
fileinfo
filter
ftp
gd
hash
iconv
json
libxml
mbstring
mcrypt
mysql
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
posix
readline
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
sqlite3
standard
sysvsem
sysvshm
tidy
tokenizer
xdebug
xml
xmlreader
xmlrpc
xmlwriter
xsl
Zend OPcache
zip
zlib

[Zend Modules]
Xdebug
Zend OPcache

まつおか

                   
クラウドECのサイト構築はaiship-カスタマイズ可能なカートASP

累計2000社以上の導入の総合通販型カートシステムで、カスタマイズ性が高く、デザインの自由度はもちろん、各種システムとの連携や機能追加等も独自のカスタマイズができるため、こだわりのある本格的な通販を月額9,800円から実現できます。 またモバイルファースト設計や月2回の無償バージョンアップなどの特徴があり、使いやすさと最新性を追求した通販サイトを構築できます。 さらに信頼性の高いサーバーを採用しており大規模アクセスにも対応できるため、これからさらに通販での売上を伸ばされたい事業者様におすすめです。
         

技術カテゴリの最新記事