!!!PHPのクラス C++言語/Java言語のようなオブジェクト指向のプログラムを行う場合、 クラスでの機能のカプセルは必要不可欠です。 PHPでもクラスを定義・使用することができます。public/privateなどはなく、 クラス内の変数・関数はすべてpublic扱いになります。[[Flash]]のActionScriptに近いですね。 class CShopping { var $item = '鉛筆'; var $price = 55; function getAllPrice($cou) { $pr = $this->price * $cou; $tax = $pr * 0.05; //消費税 5% return($tax + $pr); } } 注意点は、クラス内の変数はvarをつけて定義します(明示的に変数であることを示します)。 また、クラス内関数では「$this->price」のように$thisをつけて参照するようにします。 クラスを使用するときは、以下のように使用します。 $shop = new CShopping(); print($shop->item.'('.$shop->price.'円)を5つ購入したときの合計金額は'.$shop->getAllPrice(5).'円です。
'); これを実行すると、 鉛筆(55円)を5つ購入したときの合計金額は288.75円です。 と出力されます。 !!クラスの初期化(コンストラクタ) クラス名と同じ名称のfunction定義を行うと、クラス生成時(newの段階)に この部分が呼ばれます。C++/Javaと同じですね。 class CShopping { var $item = '鉛筆'; var $price = 55; function CShopping($item, $price) { $this->item = $item; $this->price = $price; } function getAllPrice($cou) { $pr = $this->price * $cou; $tax = $pr * 0.05; return($tax + $pr); } } $shop = new CShopping('消しゴム', 98); print($shop->item.'('.$shop->price.'円)を5つ購入したときの合計金額は'.$shop->getAllPrice(5).'円です。
'); これを実行すると、以下のように出力されます。 消しゴム(98円)を5つ購入したときの合計金額は514.5円です。 このほか、クラスの継承も実現可能です。 そこはまだ掘ってないのでまた今度。