0
1

More than 3 years have passed since last update.

グローバル変数の整理法

Posted at

言語

PHP

グローバル変数と書きましたが、ローカル変数でも応用できます。

整理法1

こんなグローバル変数があるとします。

$bara   = 1; //バラ
$kiku   = 2; //菊
$sakura = 3; //桜
$ume    = 4; //梅
$tulip  = 5; //チューリップ

これらを関数内で使う場合、いちいち global $bara; global $kiku; ・・・ と宣言しなければなりません。

こんな時は、関連する複数の変数を1つにまとめるとよいです

$flower = array();
$flower['B'] = 1; //バラ
$flower['K'] = 2; //菊
$flower['S'] = 3; //桜
$flower['U'] = 4; //梅
$flower['T'] = 5; //チューリップ

関数内で使うときも global $flower; と1行でOKです

$flower[0], $flower[1] のような単なる連番だと保守性が落ちるので、私はアルファベット1文字の連想配列にしています。

整理法2

関連する複数の変数を、クラスにまとめる方法もあります。

class flower {
    public $bara   = array(); //バラTBL
    public $kiku   = array(); //菊TBL
    public $sakura = array(); //桜TBL
    public $ume    = array(); //梅TBL
    public $tulip  = array(); //チューリップTBL
}

$flower = new flower();

メソッドも何もない、変数をまとめただけのクラスです。

このクラス方式は、複数のDBテーブルのデータをまとめる用に使うと便利です。
関数内で使うときも global $flower; と やはり1行でOKです。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1