##public アクセス修飾子
どこからでもアクセス可能
public function __construct()
基本__constructの修飾子は必ずpublicにする
なぜ??
privateにするとメソッドを呼び出せなくなるため、インスタンスの生成ができなくなります。
##private アクセス修飾子
同じクラスからのみアクセス可能。非公開のため、継承クラスからもアクセス不可
##protected アクセス修飾子
そのクラスもしくは、非公開であるが継承クラスからもアクセス可能
##static 修飾子
protected static $_item_array
$_item_arrayはインスタンス変数
static宣言は、インスタンス化せずその変数にアクセスできます。
アクセス例
「クラス名::$インスタンス変数名」は呼び出しできます。
「クラス名::メソッド名()」は直接参照可能です。
原理はメモリ上に残り続ける
※staticメソッドはインスタンスからの呼び出しはできません。
##オブジェクト指向のカプセル化
呼び出し側からはこのメソッドを介して$_itemArrayの値を取得する。
この様なメソッドをgetterという
public function getItemArray()
{
return InventoryMail::$_itemArray;
}
setterはgetterの逆でクラス外から$_itemArrayに値を代入できる
public function setItemArray(Item item)
{
InventoryMail::$_itemArray->push(item);
}
##配列書き方
$item_array = [
["item_name"=>"商品A", "inventory_controll"=>10],
["item_name"=>"B","inventory_controll"=>4],
["item_name"=>"C", "inventory_controll"=>5],
["item_name"=>"D", "inventory_controll"=>11]
];