phpの基本を学んでみよう(結合,変数展開,配列,連想配列,繰り返し,関数,引数,戻り値,フォームなど)


近況報告

エンジニア転職成功しました。YouTubeもはじめました。

phpの基本を学んでみようシリーズ1
今回は基本記法からフォーム送信までです。

著者略歴

名前:YUUKI
ポートフォリオサイト:Pooks
現在:Webエンジニア見習い

基本記法

<? php

//構文を書く

?>

ルール

;  文末
//  コメントアウト
echo 出力
'' "" 文字
$ 変数の宣言
const = 定数
namespace = 名前空間

構文の意味

結合記法

  • ドットを使って文字列や変数を繋げる

変数展開

  • {$変数名}

switch文

  • case 引数にとった変数と一致したら処理を実施
  • break ブロック脱出
  • default それ以外の処理(else的なやつ)

配列

  • $ 配列宣言時に使用
  • array(配列)
  • $test[] = ''文字列' 配列末尾に値を追加

連想配列

  • キー => 値でカンマで区切って値を格納(Rubyのハッシュ)
  • キー 取り出し $test['name']; シングルクォーテーションを使用
  • 末尾追加 $test['name'] = 'yuuki' nameキーに値を追加

繰り返し処理

  • for文(初期値,ループ条件,増分)
  • while文(ループ条件){ 繰り返し処理; 増分; }

continue

for(初期値,ループ条件,増分){
  if(条件){
    continue; (条件がtrue時のみスキップ
}
}

foreach 配列のキーと値を一個一個取り出して処理する

  • 連想配列でも可
  • キーは省略可

関数

組み込み関数

strlen関数

引数に取った文字列の文字数を返す。

echo strlen('Progate');

=>7

strlenの引数には変数も対応可

$language = 'PHP';
echo strlen($language);

=>3 
count関数

引数に取ったインデックス(配列の要素数)を返す

$data = array('東京','大阪','京都');
echo count($data);

=>3
rand関数

第一引数と第二引数の値の間のランダムな整数を返す

echo rand(1,4);

=>3

関数の定義

functionを使って関数を定義する


//関数の定義
function printCircleArea($radius){
  echo $radius * $radius * 3
}

//呼び出し
1 printCirleArea(3);
2 printCircleArea(5);

//出力結果
27
75

関数の作り方


//関数の定義
function hello(){
  echo 'Hello world';
}

//呼び出し
hello();

//出力結果
Hello world

引数

関数では、引数を関数内で受け取るために「仮引数」を定義する

//関数の定義(第一引数と第二引数に仮引数を定義)
function printSum($num1,$num2){
  echo $num1 + $num2;
}

//呼び出し
printSum(1,3);

//結果
4

戻り値

returnを定義することで、呼び出し元にデータを返す
この返す値のことを「戻り値」と呼ぶ。

//関数内で戻り値を定義
function getSum($num1,$num2){
  return $num1 + $num2;
}

//呼び出し
$sum = getSum(1,3);
echo $sum;

//結果
4

フォームタグ

フォームを設置して、値を送信する。
action="送信先ファイル(url.php)"
method="メソッド属性(getかpost)"

//フォームタグの設置
<form action="url" method="post">
  //フォームの内容を書く
</form>
フォームの種類
//1行フォーム
<input type="text" name="email">

//複数行フォーム(閉じタグ必要あり)
<textarea name="content"></textarea>
送信ボタン
//「送信」の文字が付いたボタンを設置
<input type="submit" value="送信">

フォームのデータを受け取る

phpでデータを受け取るには、
$_POST(スーパーグローバル変数)
を使う。

$_POSTは定義済み変数。

なお、中身は連想配列になっている。

//データの受け取り方

//name属性値が「name」のデータを受け取って出力
echo $_POST['name']; 

//email属性値が「email」のデータを受け取って出力
echo $_POST['email'];

セレクトボックス

選べる(セレクト)フォームを作れる

//fruitというname属性値を持ったりんご、バナナ、みかんが選べるセレクトボックスを作成
<select name="fruit">
  <option name="apple">りんご</option>
  <option name="banana">バナナ</option>
  <option name="ornage">みかん</option>
</select>