PHPを勉強したい、PHPで何かアプリケーションを作りたい、と思ったら、まず必要となるのがPHPを実行するための開発環境です。
PHPの開発環境を構築する方法は複数ありますが、簡単に構築できるものもあれば手順が少々複雑なものもあり、それぞれにメリット・デメリットがあります。
この記事では、以下のような利用目的を想定して、それぞれの目的に合わせた環境の構築方法を紹介しようと思います。
- とりあえずPHPに触れてみたい
- 本格的にWeb開発の勉強をしたい
- 作ったものを公開したい
目次
とりあえずPHPに触れてみたい
とりあえずPHPに触れてみたい人にオススメが開発環境は、XAMPPというパッケージソフトをインストールする方法です。
XAMPPとは、PHPの開発に必要なアプリケーションが一まとめになっているパッケージです。
Windows、Mac、Linuxで利用でき、インストーラからインストールするだけで環境を構築できます。
PHPの開発環境を構築するのに最も簡単な方法です。
しかし、世の中の一般的なWebサーバは大半がLinuxで動いています。WindowsやMacで利用する場合、OSそのものに大きな差異ができてしまうので、それを意識したうえで使う必要があります。
とはいえ、手軽に構築できるのは確かなので、PHP学習の導入としてはオススメです。
また、OSに依存しないような簡単なアプリの開発をするには十分かと思います。
こんな人にオススメ
- サーバーの知識は無いが、とりあえずPHPに触れてみたい人
- ちょっとしたアプリをサクッと作ってみたい人
メリット
- 導入が簡単
- 手軽に開発できる
デメリット
- OSによる動作の差異に注意
本格的にWeb開発の勉強をしたい
本格的にWeb開発の勉強をしたい人にオススメの開発環境は、Linuxの仮想サーバーを自分のPC上に構築する方法です。
普段使いのPCでLinuxを使っている人はあまりいないと思いますが、WindowsやMacであっても「仮想マシン」というものを作成することで、Linuxの環境を構築することができます。
仮想マシンとは、自身のPC上に全く別のOSを搭載したマシンを仮想的に作成する仕組みです。
仮想マシンの作成自体は、専用のソフトを使えば簡単にできます。有名なものだと、VMware、VirtualBoxなどがあり、どちらも無償版があります。
仮想マシンを作ったら、そこにOSや必要なソフトウェアをインストールすることで、仮想サーバーとして動作させることができます。
ただ、このあたりが初心者には少し敷居が高いかなと思います。調べればすぐに情報は見つかりますが、Linuxの種類によってコマンドが違ったり、いざ入れてみたはいいけど上手く動かなかったりと、躓くことも多いでしょう。
でもそういったトライ&エラーを繰り返すことで確実にスキルは上がりますし、分からないことを調べて解決することは、エンジニアにとって一番必要なスキルです。
また、仮想サーバーを構築することのメリットとして、VagrantやDockerといったツールと併用することで、一度動く環境を作ってさえしまえば、同じような環境を複製することが容易になるという点もあります。
例えば、PCを買い替えたので別のPCに移行したいとか、新しいアプリを開発したいけど、今使っている環境は変えたくないので環境を分けたいとか、といった場合です。
- Vagrantとは、ソフトウェアのインストールなどの仮想環境の構築手順を1つの設定ファイルにまとめて、構築を簡略化できるツール
- Dockerとは、構築した環境をまるごと「Dockerイメージ」として保管し、環境ごと簡単に持ち運びができるツール
こんな人にオススメ
- サーバーの知識が元々ある人
- 本格的にWeb開発の勉強をしたい人(サーバーの知識も身に付けたい)
- 今後も継続的にPHPの開発を続けていきたい人
メリット
- サーバーの構成を自分の好きなように決められる
- サーバーの知識が身に付く
- 一度作ってしまえば、横展開が楽
デメリット
- 難易度は高め
- 実際に公開するサーバーとの環境差異に注意
作ったものを公開したい
作ったものを公開したいという人は、レンタルサーバーを契約してしまって、そこをそのまま開発環境にしてしまうのが良いかと思います。
あらかじめ公開する前提でアプリケーションを開発するのであれば、それを実際に動かすサーバーで開発するのが最も確実です。
大抵のレンタルサーバーであれば、PHPの環境は最初から用意されていますし、こちらで構築する手間もありません。(VPSや専用サーバーの場合は除く)
ただし、開発中の状態で公開したく無い場合は、アクセス制限などの配慮が必要であったり、ファイルを編集するのにFTPソフト等が必須であるという点は、注意が必要です。
また、当然ながらサーバー契約の費用が掛かります。
ちなみに、レンタルサーバーを契約するのであれば、費用面、安定性、評判の面でも、エックスサーバーが最もオススメです。
こんな人にオススメ
- 既にレンタルサーバーを契約している人
- 開発したアプリをそのまま公開したい人
メリット
- 環境差異などは気にする必要がない
- 環境構築の手間が掛からない
- PHP以外にも色々活用できる(ブログなど)
デメリット
- 公開状態に対する配慮が必要
- リモート環境にFTP等でアクセスする必要がある
- 費用が掛かる
まとめ
まとめると以下のようになります。
- とりあえずPHPに触れてみたい=XAMPP
- 本格的にWeb開発の勉強をしたい=Linux仮想サーバー
- 作ったものを公開したい=レンタルサーバー
是非あなたの利用目的に合わせて、検討してみてください。
ちなみにこれを書いている僕自身はどうしているかというと、初心者の頃はXAMPPをよく使っていました。ただ、元々働いていた会社で自社のサーバーをいくつも持っていたので、仕事ではそこを使って開発することが多かったです。サーバーの管理は別の人がやっていたので、形としてはレンタルサーバーに近いですかね。
仮想サーバーは最近ようやく使い始めたところで、まだ勉強中という感じです。