前回、PHPとMariaDBについてそれぞれの役割や動作原理について簡単にまとめました。↓
今回は、PHPとMariaDBを使ってWEBアプリを作成するために必要な「作業環境の構築」と、PHPの基礎的な文法についてまとめたいと思います。
目次
MAMP、XAMPPのダウンロード
Apache、MariaDBが利用できるソフトウェア
ローカルでのテスト環境構築にあたり、Apache(WEBサーバー)、MariaDB(データベース)、PHP、が必須になります。
それらを1つずつ準備するには苦労するので、一括でまとめて「Apache」「MariaDB」「PHP」を利用することができるソフトウェア「XAMPP」また「MAMP」をDLします。
基本的にはMAC OSが「MAMP」でWindowsが「XAMPP」になります。
今回は「XAMPP」で進みますが、内容的にはどちらもほぼ同じです。
下記よりXAMPPをダウンロードします。
https://www.apachefriends.org/jp/index.html
XAMPPインストール
インストーラーを起動し、案内に従ってインストールします。
選択は基本デフォルトでOK。
インストール完了後、チェックBOXにチェックを入れてfinishを押します。ランゲージは英語でSAVEをクリック。その後コントロールパネルが立ち上がります。
Apache、MySQLのスタートをクリックするとwebサーバーとデータベースが立ち上がります。
これで、PHPを使ってデータベースを操作する環境の土壌が出来ました。
実際には、MariaDBに「データベースの作成」「テーブルの作成」が必要になりますが、その辺はまた次回以降に作成していきたいと思います。
ちなみに、Apache、MySQLのスタートをクリックしてもサーバーが立ち上がらない場合は、使用しているポート番号(Apacheなら80、もしくは443)がすでに利用されている場合がありますので、その場合はポート番号を空き状態に戻してください。
80はhttp、443はhttps、つまりWEB接続の標準ポート番号になるので、すでに別でWEBサーバーを公開している場合とかだと恐らくNGになると思われます。
WEBサーバーにアクセス
一先ず、WEBサーバーを立ち上げたら、ブラウザでURLに「localhost」と入力します。するとデフォルトの「index.php」の表示が返されるはずです。
これは、自分のPCの「ローカルアドレス」「ポート番号80」にWEBサーバーが正常に立ち上がった事を意味します。
「localhost」は「127.0.0.1」のループバックアドレスでも代替えできますし、もちろん割り振られているローカルIPを入力してもOKです。
ただし、index.phpに優先でアクセスするので、それ以外の名称をつけるならば、「localhost/〇〇.php」と入力しなければなりません。ポートの80番は省略可ですね。
PHPを書いてみよう
基本的な文法
それでは、実際にWEBサーバーを立ち上げて、PHPの基本的な文法について触れていきます。
データベースは使用しないので、STOPさせておきます。
PHPファイルの作成場所については、ドキュメントルート(WEBサーバー接続の際に初めにアクセスする場所)が「C/xampp/htdocs/index.php」になるので、index.phpを削除するか、リネームするか、新しく作成するかします。
変数、四則演算、文字出力
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"><title>PHP</title> <link rel="stylesheet" href="css/style.css"> </head> <body> <?php $n = "PHP"; $i = "の基礎"; print $n . $i; print "<br>"; $a = 10; $b = 2; print $a + $b; print "<br>"; print $a * $b; print "<br>"; print $a / $b; print "<br>"; print $a % $b; print "<br>"; ?> </body> </html> |
htmlに関しては割愛します。viewportとcssを書いてますが、後々スタイリングするためですので無くでも構いません。
bodyタグにphpを埋めることで、phpでhtmlの操作を行う事が出来ます。
phpの記述は「<?php」で始まり、「?>」で閉じます。この中にphpの記述を入れていきます。
変数は、頭に「$」を付けます。文字列は「”」か「’」で囲みます。
文字列をつなげたい場合は、+ではなく、「.」を使用します。
printで結果を出力できるので、一番上の結果は「PHPの基礎」とブラウザに結果が表示されるはずです。
改行に関してはHTMLの<br>が使えますが、「”」で囲む必要があるので、個別でprint “<br>”;として使用する事が出来ます。
四則演算に関しては、他の言語とほぼ同じですね。上から順に、足し算、掛け算、割り算、整数の余り、が出力されるはずです。
if文
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
<body> <?php $a = 10; if($a % 2 === 0 ) { print "偶数"; } else { print "奇数"; } ?> </body> |
簡単な分岐のif文ですが、これも他の言語と記述がほぼ同じです。
上のプログラムは変数aの値が偶数か奇数かを判断して結果を出力してくれるはずです。
分岐を増やす場合は、「else if」も使えます。
While文
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
<body> <?php $a = 1; while($a <= 10) { print $a . "回目の処理です"; $a = $a + 1; print "<br>"; } print "10回の処理を終えました!"; ?> </body> |
繰り返しプログラムのwhile文ですが、こちらも他の言語とほぼ同じです。
上のプログラムは変数aが1~10になるまで、10回「〇回目の処理です」と出力し、処理が終えれば「10回の処理を終えました」と出力する簡単なものです。
phpは改行を入れなければ文字列が縦に並ばないので、ループ内に<br>を入れています。
配列
1 2 3 4 5 6 7 8 9 10 11 |
<body> <?php $a = ["キライ!", "恋人未満!", "抱いて♡"]; $b = rand(0, 2); print $a[$b]; ?> </body> |
最後に配列ですね。これも他とほぼ同じです。
特に指定しなければ、[]の配列の中身は左から順に0.1.2…の順番が割り振られます。
上のプログラムは、phpの関数「rand()」を使用していますが、これは()に数字の引数をいれてやれば、引数に応じてランダムな数値を返します。
上の場合だと、「0~2」つまり「0、1、2」の3種類の数値を返します。
したがって、配列に3つ文字列を用意しておけば、rand()と組み合わせることによってprintの結果のようにランダムで3種類の文字列が出力されるはずです。
それでは、次回からデータベースの操作に入っていこうかと思います。
データベースの作成、テーブルの作成。phpの「get」「post」の挙動についてまとめようかと思います。