プログラミング PHP

PHPの開発環境を構築するには?

PHPの学習を始めたい。。。
環境構築をしたいんだけど、いまいち標準がよくわからない。。。PHPの定番な開発環境って何でしょう?
あまり環境にパッケージは使いたくないんだけど……

PHPの環境構築について、このようなお悩みをお持ちではないでしょうか?

特に他言語での経験がある人はPHPの環境構築で
「適当にやったらうまく行かずにドツボにはまってしまった」
「いまいち定番どころがわかりにくい」といった問題にぶつかることが多いようです。

そこで、この記事ではPHPの定番の環境構築方法であるXAMPPの紹介と、XAMPPのメリット・デメリットを紹介します。
さらに、XAMPPをどうしても使いたくない方向けにXAMPPを利用しない方法もお伝えしていきます。

この記事を読めば、PHPの学習を始めるのに問題ない環境をすぐに構築できるようになります。

PHPのローカル環境構築ならXAMPP

まずは、PHPの定番学習環境の紹介からいきます。PHPというと、真っ先にあがるのがXAMPP(ザンプ)でしょう。

XAMPPはPHPの実行に必要なローカルサーバーのApache、データベースのMariaDB、PHPの本体がパッケージになった統合環境構築ツールです。

インストールはこちらから

それぞれの頭文字を取ってXAMPP(Apache、MariaDB、PHP)なんです。
Xともう一個のPは何なのかというと、XはクロスプラットフォームのX、Pは今となってはマイナーな感のあるPerlのPです。

クロスプラットフォームということで、WindowsだろうとmacOSだろうとLinuxだろうと関係なく動かすことができます。
なので、一度使い慣れるとどの環境でも使い回せる、というのは大きなメリットですね。

まあ、macOSにはXAMPPと同じような方向性のMAMPというツールが有り、こちらのほうが若干人気が高い感じです。
またLinuxの場合、わざわざXAMPPを使わなくてもデフォルトでApacheやMySQLが動くことが多いので、あまり出番はないかもしれません。
そのため、Windowsユーザーが一番多いでしょう。

ちなみに、MariaDBなんて聞いたことない・・・
という方もいるかも知れませんが、これはMySQLと同じもの、という認識でOKです。

元々MySQL開発の指導的な立場に居た人が会社と喧嘩別れして、新しく作ったDBシステムという経緯があるため、MariaDBはほとんどMySQLと同じ感覚で使うことができます。MariaDBもOSS※ なので、使用に関して悩むこともありません。

※ OSS(オープンソースソフトウェア:無償で利用でき、プログラムのソースコードが一般に公開されているソフトウェアのこと)

2023/6 現在、PHPのバージョンは 8.2.4 です。
「Widows向けXAMPP」をクリックすると、以下のようにダウンロードが始まります。

ダウンロードされたファイルを実行すると、setupが始まりますので、画面の指示通り進めていけば、インストールできます。

XAMPP利用時のメリット・デメリット

この章ではXAMPPを利用することのメリット・デメリットを見ていきましょう。

メリット

実際にインストールしていただけるとわかると思いますが、XAMPPはインストール自体にほとんど手間がかかりません
インストーラのNextボタンをポチポチ押していくだけでインストールが完了します。

これだけで、プログラミング言語の環境構築につきもののパス通し、環境変数の設定がすべて完了します。

みなさんも何かしらの環境構築で、環境変数の設定などでドツボにはまってしまった・・・という経験はないでしょうか? 
筆者は割と細かい設定が苦手なので、環境構築では高確率で最低1回はドツボにはまります。

XAMPPはこの点で、とてもありがたいパッケージになっております。また、環境変数などの設定に慣れていない初心者でも問題なく環境構築ができるので、プログラミングを教えるときに非常に便利です。

余談ですが。。。
どこぞのプログラミングセミナーは、下手をすると半日ぐらい環境構築に時間を割くことがあるのだとか。。。
それだけ多くの初心者相手に環境構築をさせるのは大変だ。。。ということでしょう。

インストールをして、コントロールパネルを立ち上げ、Apacheのスタートボタンを押せば、これだけでローカルサーバーが立ち上ってアクセスできるようになります。この速度感は他には代えがたいメリットでしょう。

デメリット

では、逆にデメリットはというと、XAMPPがパッケージのソフトである、ということです。
つまり、XAMPPをインストールすると、ほぼ自動的にApache、MariaDB、PHPのバージョンが一律に固定されてしまいます

これの何が問題なのかというと、例えば複数のPHPのプロジェクトを抱えている人が、片方は最新のApacheにPHP7.1を使って、もう片方はApache2.2系を使って、PHPは5を使いたい、なんて状況に合わせるのが難しいのです。

PHPはバージョンによってかなりできることが変わるので、できる限り開発先と同じバージョンで開発したいところです。
ですが、XAMPPをつかうと柔軟なバージョン変更が行えないわけです。
これは、バージョン管理がかなり柔軟にできるRubyやPythonのユーザーから見ると、非常に不便に映るようですね。

一応、XAMPPをバージョン違いで共存させるような方法もあるので、不可能ではありません。
ですが、バージョンを自由に組み合わせることができない、というのはXAMPPの一番のデメリットとなります。

また、XAMPPの問題とは若干ずれますが、ローカルと本番環境の違いが問題になるケースも時々あります。
この点を嫌って、ローカルであっても実際にLinuxサーバを立てて開発すべきだ、という主張をする人もいます。
ここらへんは環境とチームメンバーの考え方に依る部分といえますね。

ローカル開発環境を構築する方法

この章ではPHPのローカル環境をXAMPPを使わずに0から構築する方法を紹介していきます。

まずはPHPをインストールしましょう
今回はWindowsに絞って見ていきます。
※macOSはデフォルトでPHPが入っていますし、Linuxはyumやaptで割と簡単にインストールできてしまうので、説明する部分がほとんどないからです。

Windows用のPHPの公式配布サイト
PHP For Windows ⇨https://windows.php.net/download/

バージョンごとにZipファイルが置いてありますので、使いたいバージョンのファイルをダウンロードしましょう。
2023/6 時点での最新バージョンは、8.2.6

Non Thread SafeとThread Safeという区分がありますが、とりあえず「Thread Safe」を選んでおくと後々安心です。
Apacheと組み合わせるならばThread SafeでOKです。

32bit版と64bit版の違いもありますので、ご自身のOSに合わせて選択してください。
また、PHPの実行にはVisual C++ ランタイムが必要です。インストールされていない方はこのタイミングでインストールしておきましょう。

PHP 5.5と5.6の実行には、「Visual Studio 2012 更新プログラム 4」 の Visual C++ 再頒布可能パッケージが必要です。
Microsoft ダウンロードセンターhttps://www.microsoft.com/ja-JP/download/details.aspx?id=30679

PHP 7以降には、「Visual Studio 2015」 の Visual C++ 再頒布可能パッケージが必要です。
Microsoft ダウンロードセンターhttps://www.microsoft.com/ja-JP/download/details.aspx?id=48145

これらはVisual Studioなどをインストールした際に同時にインストールされていることも多いので、いつの間にかインストール済みだったりするかもしれません。

続いてPHPを解凍してパスを通していきましょう。Cドライブ直下にphp-7.3.5というフォルダを作り中身を解凍しました。

最近のWindowsの面倒なポイントですが、ZipファイルをCドライブ直下に移動して、その場で解凍する際に管理者権限が必要な場合があります。事前に解凍してフォルダを貼り付けると問題が発生しないようなので、ここで詰まっている方はC直下で解凍しない、ということを試してみてください。

解凍しましたら、解凍先のフォルダの中からphp.ini-productionというファイルを探してください。これがPHPの設定ファイルの大本になります。このファイルのコピーを作成し、ファイル名をphp.iniに変更します。これで設定ファイルの作成は完了です。

環境変数の設定

[Windows]キー+[Pause/Break]キーでコントロールパネルのシステムを開くことができます。
そこから「システムの詳細設定」を選ぶとシステムのプロパティウインドウが開きます。

システムのプロパティウインドウが開いたら、一番下の環境変数ボタンをクリックして環境変数ウインドウを開きます。

既にある変数のPathにPHPのフォルダのパスを追加します。今回はC直下にphp-7.3.5というフォルダ構成なので、C:\php-7.3.5を追加します。

コマンドプロンプトからphp -vを入力して、以下のようにバージョンが表示されれば成功です。

これで、基本的なPHPの開発ができるようになりました。
PHPの開発にはサーバが必要なのでは? と思う方もいるかも知れませんが、PHPには5.4.0から内蔵のWebサーバが付属しています。
そのため、PHP単体で開発をすることが可能です。

使い方は、コマンドプロンプトで以下のコマンドを入力して、ブラウザからlocalhost:8000に接続すればOKです。

以下のコマンドでドキュメントルートを任意のフォルダから始めることができます。デフォルトだとユーザーフォルダ直下がドキュメントルートになります。

これで、とりあえずのPHP開発は可能になりました。

ただ、ビルトインサーバはシングルスレッドプロセスしか実行できないので、リクエストがブロックされると固まります。
あくまでも学習用・テスト用環境として使いましょう。

Apacheが必要な場合は以下のサイトからバイナリ配布サイトを選んでダウンロードしてきてください。
Apache公式でWindows向けのバイナリ配布は終了してしまったようなので、サードパーティ製のバイナリをインストールする必要があります。

Using Apache HTTP Server on Microsoft Windows http://httpd.apache.org/docs/current/platform/windows.html#down

データベースが必要な場合は、以下のサイトからインストーラをダウンロードしてきて、インストールできます。

MySQL on Windows
https://dev.mysql.com/downloads/mysql/

ここまで準備すれば不自由なくPHPを開発することができるでしょう。

このように、XAMPPを使用しないで開発環境を作るには結構面倒なので、難しい場合には、XAMPPをインストールした方がより確実に
簡単にPHP開発環境を作ることができるかと思います。

まとめ

いかがだったでしょうか?

今回はPHPの環境構築にトライしている方向けに、XAMPPを使った方法とそのメリット・デメリット、そしてXAMPPを使わないでPHPの開発環境を構築する方法をお伝えしました。

この記事でPHPの環境構築につまずく方が少なくなれば嬉しいです。

こちらの記事も併せて読んでいただき、プログラミングを始めてみましょう。

-プログラミング, PHP