プログラムの変数で使用するプレフィックス(接頭語)および、データベースのテーブル名に付けるプレフィックス(接頭語)についてご説明いたします。
変数のプレフィックスってなんだろう?
目次
変数のプレフィックスとは?
例えば、PHP 言語で 現在時刻を表す変数「now」を定義する場合、そのまま「$」を付けて「$now = time();」と定義しているプログラムソースをよく見かけます。
確かに、日時を計算する場合には そのままの日付時刻型の方が便利な場合もあるかもしれませんが、ブラウザに出力しようとして「echo
$now;」とすると意味不明な数字の羅列が表示されてしまいます。これを回避するために、date() 関数を使って文字列型に変換し「$now = date(“Y/m/d H:i:s”, time());」と定義する場合もあるでしょう。
「$now」変数を定義した人にとっては「$now は文字列型!」と頭に入っているかもしれませんが、では、プログラムを数年後に改修する他人にとって…、または1年後に自分自身がそのプログラムを改修する立場になったときに「$now は文字列型!」であることを覚えているでしょうか?
もし覚えていない場合 … どんな作業が発生するかというと「$now = time();」または「$now = date(“Y/m/d H:i:s”, time());」または「$now = ???;」といった定義文を探さなければならなくなります。これは大変な労力です!
変数にはプレフィックスを付けよう!
こういった作業を無くすために、変数を定義する際には「プレフィックス」と呼ばれる3文字の接頭語を付けることをおすすめします!
よく使用するプレフィックス
データ型 | プレフィックス | 変数の例 |
---|---|---|
日付時刻型 | dtm | dtmData |
整数型 | int | intData |
長整数型 | lng | lngData |
文字列型 | str | strData |
時々使用するプレフィックス
データ型 | プレフィックス | 変数の例 |
倍精度浮動小数点数型 | dbl | dblData |
オブジェクト型 | obj | objData |
単精度浮動小数点数型 | sng | sngData |
使用例
上記を考慮して、$now を日付時刻型として定義すると「$dtmNow」となり、文字列型として定義すると「$strNow」となる。
データベース – テーブル名に付けるプレフィックス
データベースは各種データを保存し、効率的に検索することができるためのソフトウェアですが、機能によってデータの種類は大きく2種類に分かれます。
マスターテーブル “Mst”
1つ目は「マスター」と呼ばれるもので、簡単に言うと1つ1つのデータが重複せずに一意に定義され … 例えて言うなら会員台帳に代表されるようなデータです。
マスターテーブルには、プレフィックス “Mst” を付けます。
例. ユーザーマスター → “MstUser”
トランザクションテーブル “Trn”
2つ目は「トランザクション」と呼ばれ、1つ1つのデータは時間/時系列情報を除いて全く同じデータが重複して追加される可能性がある … 例えていうなら売上等の取引データになります。
例. 売上トランザクション → “TrnSales”
SNS開発18年で2つのSNSを開発・運用中の当社が、あなたのアイデアを形にするお手伝いをします。
[…] … 「変数 プレフィックス」→ 「変数のプレフィックスについて」9月07日 … (not provided) → 「自営業を長く続けるコツ」カテゴリ 9月17日 […]