🐖

PHP8 基礎 変数を学び直してみた

2022/10/18に公開

変数とは

変数とは一言でいえば データの入れ物
やりとりされる途中経過のデータを一時的に保存する役割がある。

$hoge = "こんにちは"

で変数「hoge」に「こんにちは」という文字列データを代入できる。
名前を指定して変数の値を取り出すことを参照すると言う。

より良い識別子のためのルール

  1. 名前からデータの内容を類推できる
    good: $score $birth
    bad : $s $b
  2. 長すぎない、短すぎない
    good: $password $name
    bad : $bad $real_name_or_handle_name
  3. ローマ字での命名は避ける
    good: $name $age
    bad: $namae $nenrei
  4. 紛らわしい名前を使わない
    $tel $Tel //大文字、小文字で使い分けない
    $user/$usr //1文字違いを使わない
  5. 記述方法を統一する
    $mailAddress/$mail_address/$MailAddress


一般的にPHPでは変数、関数はキャメル記述(先頭は小文字、単語の区切りを大文字)
定数はアンダースコア区切りの大文字
クラスは先頭文字を含めて大文字の単語区切りをするケースが多い。
書き手の意図を把握しやすい変数名は、説明変数、要約変数とも呼ばれて、よい変数のつけ方である。

可変変数とは

変数名を変数の値によって決めることができる変数を可変変数と呼ぶ。
難しいことを考えずにこの形式を頭に思い浮かべればよい。

$example1${"example".$i}
<?php
//可変変数を使わない場合
function checkAddressBefore($address1,$address2, $address3) {
    if(empty($address1)) {
         echo "値が空です";
	 exit;
    } else {
        echo $address1;
    }

    if(empty($address2)) {
        echo "値が空です";
	exit;
    } else {
        echo $address2;
    }

    if(empty($address3)) {
        echo "値が空です";
	exit;
    } else {
        echo $address3;
    }
 }

//可変変数を使う場合
function checkAddressAfter($address1,$address2, $address3) {
    for ($i = 1; $i <= 3; $i++) {
        if(empty(${'address' . $i})) {
            echo "値が空です";
            exit;
        }
        echo ${'address' . $i};
    }    
}

//結果は同じ 
//ちば、しが、さが がechoされる
checkAddressBefore("ちば","しが","さが");
checkAddressAfter("ちば","しが","さが");

可変変数 ${"example". $i} を使ったほうがシンプルに書ける。

ふりかえり

  • 変数 一時的にデータを代入するデータの入れ物。

  • 参照 変数の名前を指定して中身を取り出すこと。

  • 変数名を指定するときは説明変数を意識した命名規則をする。

  • 変数名(と関数)はキャメル記述をする。

  • 可変変数${"example". $i}はコードの省略化に便利

Discussion