PHPで値を管理する上で、欠かせないのが「配列」です。
同じく値を管理するものに、「オブジェクト」というものもあります。
どちらも、PHPを勉強する上で必ず耳にするキーワードです。
しかし、この2つの違いが分かりづらくはないですか?
今回はPHP初心者に向けて、
・オブジェクトと配列の違い
・それぞれのメリット
について解説していきます。
どちらも重要な要素ですので、違いがよく分からないという方は、ぜひ最後まで読んで理解を深めてくださいね。
オブジェクトと配列の違い
書き方
まずは、配列とオブジェクトの書き方を見ていきましょう
1 2 3 4 5 |
// 連想配列 $array = [ "name" => "山田", "age" => 22, ]; |
配列には「key」と「value」がセットとなっています。
配列の宣言は[ ] で行い、「key」と「value」を「=>(ダブルアロー演算子)」で結びます。
1 2 3 4 5 6 7 8 9 10 11 12 |
// オブジェクト class Man{ public $name; public $age; function __construct($name, $age){ $this -> name = $name; $this -> age = $age; } } $man1 = new Man("山田", "22"); |
対してオブジェクトは、クラスの中に「プロパティ」を宣言します。
クラスの宣言は{ } で行い、変数を宣言します。
オブジェクトはnew演算子でインスタンス化をして値を持たせます。
値の呼び出し方
続いて、値の呼び出し方を見ていきましょう。
1 2 |
// 連想配列 echo $array['name']; //山田 |
配列では、「key」を指定して「value」を呼び出します。
書き方は $array[‘key’] です。
1 2 |
// オブジェクト echo $man1 -> name; // 山田 |
対してオブジェクトでは、「->(シングルアロー演算子)」を用いてプロパティを指定して呼び出します。
それぞれのメリット
配列では、
・データの追加や削除が容易に行える
というメリットがあります。
対してオブジェクトには、
・プロパティと共に、メソッドを設定できる
というメリットがあります。
オブジェクトのメリットは、規模が大きくなるにつれて重要となります。
例えば、数百の関数の中から目的の関数を探すのは大変です。
しかしオブジェクトであれば、関数はクラスに紐づいているため、対象のクラスから容易にアクセスや修正が行えます。
まとめ
今回は「オブジェクト」と「配列」について、
・オブジェクトと配列の違い
・それぞれのメリット
について解説しました。
どちらもPHPを理解する上で欠かせない要素ですので、しっかりと理解できるようにしておきましょう。