こんにちは、ikuxxと申します。
今回は「PHP」の基礎文法、基本的な書き方について、簡単にまとめてみました。
【PHP7 基礎・文法】初心者向けの基本的な書き方
文字出力
1 2 3 4 5 6 7 8 9 |
// 文字出力 echo, print <?php echo "Hello World!!"; // Hello World!! print "こんにちは"; // こんにちは ?> |
変数
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 |
// 変数(箱) - Variables <?php $hello = "こんにちは!"; $text = "久しぶりですね!"; echo $hello; // こんにちは! echo "$hello たけしさん!"; // こんにちは! たけしさん! echo $hello . "エミリー " . $text; // こんにちは!エミリー 久しぶりですね! ?> <?php $a = 5; $b = 10; echo $a + $b; // 15 ?> <?php $color = "青"; $fruit = "りんご"; echo $color . $fruit; // 青りんご ?> |
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 |
// スコープ外(グローバルスコープ) <?php $number = 100; // 変数をここで定義:スコープ外(グローバルスコープ) function aaa() { // この中がスコープ内。 echo $number; } aaa(); // スコープ内に何も値がないためエラー。 echo $number; // 100 ?> // スコープ内(ローカルスコープ) <?php function bbb() { $number = 200; // 変数をここで定義:スコープ内(ローカルスコープ) echo $number; } bbb(); // 200 echo $number; // 変数がスコープ内に書かれていて、この命令はスコープの外に書かれているため、エラーが表示される。 ?> |
配列
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
// 配列 <?php $sushi = array ('まぐろ', 'うに', 'えんがわ'); // 配列 echo $sushi[0]; // まぐろ echo $sushi[1]; // うに echo $sushi[2]; // えんがわ echo "僕は、" . $sushi[0] . "と、". $sushi[1] . "と、" . $sushi[2] . "が好きです。"; // 僕は、まぐろと、うにと、えんがわが好きです。 ?> |
1 2 3 4 5 6 7 8 9 10 11 |
// 配列 <?php $sushi = array("まぐろ"=>"150", "うに"=>"400", "えんがわ"=>"200"); echo "うに" . "は" . $sushi['うに'] . "円です。"; ?> // うには400円です。 |
関数
1 2 3 4 5 |
// 関数 function 関数名(引数){ // ここに処理 } |
1 2 3 4 5 6 7 8 9 10 11 |
// 関数 <?php function abc() { echo "Hello World!!"; } abc(); // 関数を呼び出す。 ?> |
関数+引数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
// 関数 <?php function abc($name) { echo "$name<br>"; } abc("太郎"); abc("みゆき"); abc("マイケル"); abc("アンジェラ"); abc("陳"); ?> /* 太郎 みゆき マイケル アンジェラ 陳 */ |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
// 関数 <?php function abc($name, $nationality, $age) { echo "名前:$name / 国籍:$nationality / 年齢:$age<br>"; } abc("太郎", "日本", "46"); abc("みゆき", "日本", "33"); abc("マイケル", "アメリカ", "67"); abc("アンジェラ", "フランス", "21"); abc("陳", "中国", "87"); ?> /* 名前:太郎 / 国籍:日本 / 年齢:46 名前:みゆき / 国籍:日本 / 年齢:33 名前:マイケル / 国籍:アメリカ / 年齢:67 名前:アンジェラ / 国籍:フランス / 年齢:21 名前:陳 / 国籍:中国 / 年齢:87 */ |
1 2 3 4 5 6 7 8 9 10 11 12 |
// 関数 <?php function abc($price) { $total_price = $price * 1.08; echo $total_price; } abc(100); ?> |
引数について
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 |
// 引数 <?php function abc() { $total_price = 100 * 1.08; echo $total_price; } abc(); // この場合だと、もし後から数字を変えたくなった場合に、もう1つ新しく別で同じ式を書かなくてはいけない。 ↓ function abc($price) { $total_price = $price * 1.08; echo $total_price; } abc(100); // この場合だと、もし後から数字を変えたくなった場合に、()内の数字を変えるだけでOK。 // 引数を使うメリットというのは、関数の使い回しが出来るようになるという点。 ?> |
オブジェクト指向
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
// オブジェクト指向:やきとん屋 <?php Class Product { // 製品を管理するためのクラス public $name; // 製品の名前 public $stock; // 在庫 } // 設計図だけがあってもどうしようもないので、実体化させなくてはいけない。 $harami = new Product(); // これで新しいプロダクトの"ハラミ"が出来ました(ここで変数の名前を決める) newで実体化。 $harami->name = "ハラミ "; // $haramiの名前は "ハラミ" $harami->stock = 30; // $haramiの在庫は30本。 echo $harami->name . $harami->stock; // ハラミ 20 $kashira = new Product(); // これで新しいプロダクトの"かしら"が出来ました(ここで変数の名前を決める) newで実体化。 $kashira->name = "かしら "; // $kashiraの名前は "かしら" $kashira->stock = 15; // $kashiraの在庫は15本。 echo $kashira->name . $kashira->stock; // かしら 15 |
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 38 39 40 41 42 43 44 |
// オブジェクト指向:やきとん屋さん <?php Class Product { // 製品を管理するためのクラス:public, private(継承出来ない), protectedがある(継承したクラスの中でのみ有効) public $name; public $stock; public $price; public function getStock() { // getStock関数 $message = $this->name . "の在庫は" . $this->stock . "本です。"; return $message; } } $harami = new Product(); $harami->name = "ハラミ"; $harami->stock = 30; $kashira = new Product(); $kashira->name = "かしら"; $kashira->stock = 15; echo $harami->getStock(); // ハラミの在庫は30本です。 Class DrinkProduct extends Product{ // 製品を管理するためのクラス / extendsをしてるので、こっちが子で、Productが親になる。 public function getStock() { // オーバーライド(override):これを使えば、他のクラスの中身には影響がなく、DrinkProductのここだけに適用される。 $message = $this->name . "の在庫は" . $this->stock . "リットルです。"; // Class DrinkProductに関してのみ、"リットル"単位に変更出来る。 return $message; } } $beer = new DrinkProduct(); $beer->name = "ビール"; $beer->stock = 10; $shochu = new DrinkProduct(); $shochu->name = "焼酎"; $shochu->stock = 10; echo $beer->getStock(); // ビールの在庫は10リットルです。 ?> |
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 38 39 40 41 42 43 44 45 46 |
// オブジェクト指向 <?php class User { // Userクラス:クラスを作る時は、classという命令を使い、クラス名の最初の文字は大文字。 // プロパティ(property) public $name; // プロパティを定義するにはアクセス権の明示が必要、publicはどこからでもアクセス可能。ここがprivateでカプセル化。 // コンストラクタ(constructor) public function __construct($name) { $this->name = $name; } // メソッド(method)などを書いていく。 public function hello() { echo "Hello! I am $this->name"; } } class AdminUser extends User { // extendsを使う事で、Userのデータをそのまま引き継げる(この場合、ここが子クラスで、上のUserクラスが親クラスになる。) public function nihao() { echo "你好! 我是 $this->name!!"; } public function hello() { // 子クラスの中で、上のメソッドの上書きも可能(オーバーライド(override)) echo "Hey!! I'm $this->name"; } } // インスタンスを作る時は、newという命令を使う。 $taro = new User("たろう"); $jessica = new User("Jessica"); $lee = new AdminUser("李"); echo $taro->name; // たろう $jessica->hello(); // Hello! I am Jessica $lee->hello(); // Hey!! I'm 李 $lee->nihao(); // 你好! 我是 李!! $jessica->hello(); // Hello! I am Jessica ?> |
メソッドチェーン
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 |
// メソッドチェーン <?php function aaa() { echo "あいうえお "; } function bbb() { echo "かきくけこ "; } function ccc() { echo "さしすせそ "; } aaa().bbb().ccc(); // あいうえお かきくけこ さしすせそ ?> |
if, else, elseif文
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 |
// if, else, elseif文 <?php // if文 if () { // } // else文 if () { // } else { // } //elseif文 if () { // } elseif { // } else { // } ?> |
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 |
// if文, else文, elseif文 <?php $score = 60; if ($score >= 80) { echo "素晴らしい!"; // $scoreが、80以上の場合は、素晴らしいと表示される } if ($score >= 80) { echo "素晴らしい!"; // $scoreが、80以上の場合 } else { echo "次は頑張りましょう"; // $scoreが、80以下の場合 } if ($score >= 80) { echo "素晴らしい!"; // $scoreが、80以上の場合 } elseif ($score >= 50) { echo "よく出来ました。"; // $scoreが、50以上、80以下の場合 } else { echo "次は頑張りましょう。"; // それ以外(どこにも当てはまらない場合) } ?> |
switch文
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
// switch文 <?php switch () { case 〇〇: // ここに書く。 break; case 〇〇: // ここに書く。 break; case 〇〇: // ここに書く。 break; default: } ?> |
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 |
// switch文 <?php $color = "green"; switch ($color) { case "red": echo "赤"; break; case "blue": case "green"; echo "青"; break; case "yellow": echo "黄色"; break; default: echo "どの色にも当てはまりません。"; } ?> |
for文
1 2 3 4 5 6 7 8 9 10 11 |
// for文 <?php for ($number = 0; $number < 10; $number++) { echo($number); } // 0123456789 ?> |
foreach文
1 2 3 4 5 6 7 8 9 |
// foreach文 foreach ($array as $value) { // ここに命令を書く; } foreach ($array as $key => $value) { // ここに命令を書く; } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
// foreach文 <?php $sushi = array('まぐろ', 'いくら', 'うに', 'えんがわ', 'さば'); foreach ($sushi as $neta) { echo "$neta <br>"; } /* まぐろ いくら うに えんがわ さば */ echo $sushi[1]; // いくら ?> |
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 |
// foreach文:$〇〇 as $key => $value <?php $sushi = array( 'まぐろ' => 150, // $key(今回は、$neta) => $value(今回は、$price) 'いくら' => 200, 'うに' => 400, 'えんがわ' => 200, 'さば' => 300 ); foreach ($sushi as $neta => $price) { echo $neta . 'は' . $price . "円<br>"; } ?> /* まぐろは150円 いくらは200円 うには400円 えんがわは200円 さばは300円 */ |
while, do while文
1 2 3 4 5 6 7 8 9 |
// while文 <?php while () { // } ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
// while文 <?php $number = 0; while ($number < 10) { echo "$number"; $number++; } // 0123456789 ?> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
// do while文 <?php $number = 0; do { echo "$number"; $number++; } while ($number < 10); // 0123456789 ?> |
XAMPPを使って、PHPの結果をブラウザで確認する方法
XAMPPを起動し、特定の場所にPHPファイルを置く、
C:\xampp\htdocs\フォルダ\index.php
そして「index.php」の中に、
1 2 3 4 5 |
// index.php <?php echo 'Hello World!!'; |
でOK。
そして「index.php」をブラウザで開いて結果を見てみる。
本日は、PHPの基本的な書き方を簡単にまとめてみました。