あとはコードを書くだけ,はじめに作る開発環境構築ベストプラクティス

第1回 PHP開発環境の構築[1]―PHPが実行できるまで

この記事を読むのに必要な時間:およそ 3 分

連載のはじめに

こんにちは,teratail開発チームの出川幾夫@ikuwowです。

プログラミング言語などの動作環境の構築というのは面倒で,ときには精神をすり減らす作業となることがあります。単に動作させるまでの手順や,ライブラリなども含めたソースコードの扱い,デプロイの方法や環境によって動作などを分ける方法など,考えたらきりがありません。

また触れる範囲がインフラの深いところにも伸びる場合があり,プログラミングを中心にする人は不慣れなことに非常に時間がかかり辛い思いをすることが多いかもしれません。楽しくコードを書いて自分のやりたいことを実現したいのに,その前の段階で詰まってやる気をなくしてしまうこともあります。

近年ではJSFiddleなどのオンライン実行環境など,環境構築をしなくても動作を試せる環境は多く用意されています。しかしはじめからwebサーバにホストしたりアプリストアにあげたりしてリリースすることも視野に入れて開発したい場合もあり,こういった場合は自分で構築の手順を追う必要があります。

そのような人たちに向けて,この連載では「あとは楽しくコードを書くだけ」の状態になるまでに必要な実行環境の構築や,開発をスムーズに進めるために必要なことのベストプラクティスを言語別にまとめて紹介していきます。

なお,この連載での動作環境はMacまたはLinuxのいずれかのディストリビューションを前提としていますので,Windowsの場合などは適宜読み替えていただければと思います。

今回は,多くのwebアプリケーションで利用されているPHPの環境の構築について見ていきましょう。

PHPのバージョン

PHPは大きく分けて5.6系と7.0系の現行バージョンがあります。歴史的な経緯で6というバージョンはありません。

現在広く利用されているのが5.6系で,こちらはオブジェクト指向が導入されるなどPHPがモダンなプログラミング言語の一員となった5系の最新バージョンです。2016年6月現在では5.6.22がリリースされています。

PHP7は2015年の12月にリリースされた新しいバージョンで,全体の処理速度が向上したり,スカラー型のタイプヒンティングが可能になるなど大きな改善がなされました。2016年6月現在では7.0.7がリリースされています。

いまから新しくPHPを始める場合はPHP7をおすすめします。世の中にある古いライブラリやフレームワークはPHP7に対応していない場合がありますが,PHP7はメジャーバージョンアップとしては比較的後方互換性があり,移行するハードルは低くデメリットもあまりないため,順次対応が進んでいくでしょう。

参考:PHP: Supported Versions
http://php.net/supported-versions.php

PHPの動作環境の構築

それではPHPが動作する環境を作っていきましょう。

phpコマンドを動作させる

まずphpコマンドを実行できるまでの手順を簡単にまとめます。

PHPは基本的に,各種パッケージマネージャで簡単にインストールすることができます。MacではHomebrewで以下のようにインストールできます。

$ brew tap homebrew/php
$ brew install php70 # もしくは brew install php56

またphpenvphpbrewなど,複数のバージョンのPHPをインストールして好きなタイミングで切り替えることができるツールもあります。PHPのアップデートをしてアプリケーションの動作を確認したり,古いバージョンでサポートしているスクリプトを動かしてみるのに非常に便利です。

MacでははじめからPHPがインストールされていてphpコマンドが動作しますが,バージョンが固定されていたりと開発には何かと不便です。改めて上記の方法のいずれかでインストールすることをおすすめします。

PHPのインストールが完了したら,そのバージョンを確認しましょう。以下のように正しく出力されたら成功です。

$ php -v
PHP 7.0.7 (cli) (built: Jun 17 2016 10:02:49) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies

もちろんパッケージマネージャを使わずにソースからビルドすることもできます。ただwebサーバ(Apache,Nginxなど)やデータベース(MySQL,PostgreSQL)との連携のため等のビルドオプションが細かく,要件が変化したりミスがあった場合にコンパイルのしなおしが必要になりとても手間がかかります。このためソースからのビルドは要件を確定させてからじっくりと行うことをオススメします。

インストールできたら,簡単なスクリプトを書いて動作を確認しましょう。

hello-world.php

<?php
echo 'Hello world.' . "\n";
$ php hello-world.php
Hello world.

PHPはコンパイルの必要がない言語なので,これだけで動作が確認できます。

著者プロフィール

出川幾夫(でがわいくお)

レバレジーズ株式会社 teratail開発エンジニア。

サーバサイドの開発を中心に,フロントエンドやインフラなど幅広い領域を担当。

物心ついた時からのApple信者で,Appleのデバイスをそれぞれじっくり使い倒すのを至上の喜びとしている。好きな野菜はネギ。

Twitter:@ikuwow

コメント

コメントの記入