初めてのPHP~準備編~
こんにちは。今回はPHPの『準備編』ということで、そもそもPHPとは?という話からPHPの環境構築の仕方まで書いていきたいと思います。これからPHPを始めようかなという方の参考になればと思います。
1.PHPってどんな言語?
PHPとは、HTMLに埋め込むことができるプログラミング言語です。
百聞は一見にしかず。早速ですがコードを見てもらいましょう。下記は ”Hello World" をブラウザに表示する簡単なコードです。
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<?php echo '<p>Hello World</p>'; ?>
</body>
</html>
HTMLの中に <?php ~ ?> というコードがありますね。これがPHPの構文になります。
サンプルは単純なテキストを表示しているだけなので、わざわざPHPで書かなくてもHTMLのみで実現できますが、例えばDBから取得したログインユーザー名を表示したい場合など、HTMLだけではできなかったサーバーサイドの処理をphpを使うことで実現できるようになります。
また、HTMLの中に処理を組み込むことができるので、HTMLに慣れている人にはとっつきやすい言語かと思います。
2.PHPの世界シェア
PHP技術者認定機構によると、サーバー側プログラミング言語でPHPのシェアは78.7%とのことです(2020年2月時点)。これはWordPressもPHPで作られていることが大きいです。
古くからある言語でトレンドとは言えませんが、WordPressがある限り今後も消えることはない言語と言えるでしょう。国内でのPHPの求人数もそこそこあるようです。
個人的には習得しといて損はない言語かと思います。
3.PHPのフレームワーク
PHPの代表的なフレームワークとしては次の2つがあげられます。
■CakePHP
2005年にリリースされ、日本国内でまだシェアを誇っているのがCakePHPです。ただ、世界で見るとだいぶ下火になっているようです。
■Laravel
LaravelはCakePHPよりも新しく、2011年にリリースされました。PHPのフレームワークの中で今一番伸びているフレームワークといえるでしょう。
CakePHPよりもライブラリが豊富で、自由度も高く、コストをかけずに開発することができそうです。
今回は基礎から学んでいきたいので、フレームワークは使わずに進めますが、いつかLaravelについても書けたらと思います。
4.PHPの環境を用意する
PHPの開発環境を作っていきます。今回はMAMPを使いたいと思います。MAMP(My Apache - MySQL - PHP)とは、PHP・WEBサーバ(Apache)・DB(MySQL)の一式をまとめてローカルに構築できるデベロッパーツールになります。
Mac版、Windows版の両方を配布しています。
■MAMPのダウンロード
MAMP公式サイトにより最新のMAMPがダウンロードできます。https://www.mamp.info/en/
上記画面にて「Free Download」ボタンをクリックします。
OSを選択する画面が出ますので、ご自身の環境に合わせてMac版かWindows版かを選択してください。今回はWindows版で進めたいと思います。
OSを選択したらMAMPのダウンロードが始まります。ダウンロードが完了すると、「MAMP_MAMP_PRO_x.x.x.exe」という名前のインストーラがローカルに保存されます。("x.x.x"の部分はバージョンNoが入ります。今回はver4.2.0をダウンロードしました。)
■MAMPのインストール
ダウンロードした「MAMP_MAMP_PRO_x.x.x.exe」をダブルクリックしMAMPのインストールを開始します。
セットアップウィザードが起動したら、「Next」ボタンをクリックします。
続いてインストール対象を選択します。MAMP PROは今回必要ないので、上記画面でチェックを外し、インストール対象外としておきます。チェックを外したら「Next」ボタンをクリックします。
ライセンス契約画面で「I accept the agreement」を選択し、「Next」ボタンをクリックします。
インストール先フォルダは特に変更せず、「Next」ボタンをクリックします。
スタートメニューフォルダも特に変更せず、「Next」ボタンをクリックします。
デスクトップにショートカットを作る場合は、「Create a desktop icon」にチェックを入れたまま、「Next」ボタンをクリックします。
最後に、下記のようなインストール内容の確認画面が表示されるので、問題なければ「Install」ボタンをクリックし、インストールを開始します。
インストールが完了したら下記画面が表示されるので、「Finish」で終了してください。
5.サーバーの起動・停止
インストールが完了したら、スタートメニューまたはデスクトップからMAMPを起動しましょう。MAMP画面の右上にサーバーの起動状況が表示されます。緑ランプがついていると起動中となります。
※Cloudは複数人で共同開発するときなど、ドキュメントやDBを共有するときに使用します。今回は必要ないので使いません。
Stop Serversボタンをクリックすると、Apache Server と MySQL Serverが停止します。
サーバーランプが点いていない時は、Start Serversボタンをクリックすると、Apache Server と MySQL Serverが起動します。
6.MAMPの設定
MAMPの設定は、メニューバーの [MAMP] > [Preferences...] から行うことできます。(メニューバーが表示されていない場合はAltを押すと表示されます)
■Start/Stop
MAMP起動時・終了時の設定ができます。
Start Servers when starting MAMP:
チェックONの場合、MAMP起動時にサーバーも一緒に起動します。チェックON推奨です。
Check for MAMP PRO when starting MAMP:
チェックONの場合、MAMP起動時にMAMPかMAMP PROのどちらを起動するか選択する画面が表示されます。チェックOFFで大丈夫です。
At startup open:
チェックONの場合、MAMP起動時にWebブラウザで WebStartページが開きます。WebStartページとはMAMPのインストール状況やPHPの設定状況など、MAMPのダッシュボードのようなページです。チェックOFFで大丈夫です。
Stop Servers when quitting MAMP:
チェックONの場合、MAMP終了時にサーバーも一緒に停止します。チェックON推奨です。
■Ports
各サーバーのポート設定ができます。
ここは、特に問題がなければデフォルト設定のままで大丈夫です。
■PHP
PHPの設定ができます。
Standard Version:
使用するPHPのバージョンが選べます。MAMP4.2.0では、「7.3.7」か「7.4.1」が選択できます。特にこだわりが無ければ、新しい「7.4.1」にしておきましょう。
Cache:
PHPのコードのキャッシュ方法を「off」「apcu」「OPcache」のいずれかより選択します。ここはデフォルトの「off」で大丈夫です。
■Web Server
Web Serverの設定ができます。
WebServer:
WebサーバーをApacheとNginxのどちらを利用するか選択します。今回はApacheを使います。
Document Root:
ドキュメントルートを設定します。ドキュメントルートとは、Webサーバーのデータ保存場所です。特にこだわりが無ければデフォルトのままで問題ありません。
■MySQL
MySQLのバージョンが確認できます。ここではMySQLの設定変更はできません。
■Cloud
Cloudの設定ができます。今回は使用しないので、説明は省略したいと思います。
7.PHPの動作確認
それではPHPが実際に動くのか確認してみましょう。下記コードを書いたhellowworld.phpファイルを作成し、ドキュメントルートに置きます。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>PHP Test</title>
</head>
<body>
<?php echo '<h1>Hellow World</h1>'; ?>
</body>
</html>
ファイルを作成したら、Webブラウザを立ち上げ、「http://localhost:Apacheポート番号/hellowworld.php」に接続してください。
上記のように”Hellow world”が表示されていればPHPが正常に動いています。
------
以上、PHPの導入編でした。次回からはPHPのコードを書いていきたいと思います。
**
今日は以上です。
Twitterではブログに書いていないこともつぶやいているので、ぜひフォローしてください。
https://twitter.com/HAMA3san
ストリートアカデミーで毎月講座を開催中。
https://www.street-academy.com/steachers/198346
note専用コミュニティへの招待について
https://note.mu/hamasan918/n/ne4d98f9db9ec
note専用コミュニティ、作成しました。コミュニティでは質問などを受け付けています。毎月500円となります。
PHP マニュアル
https://www.php.net/manual/ja/index.php
この記事が気に入ったらサポートをしてみませんか?