../../image/benilogo.gifPHP4 について


PHP の Class について。

 PHPのマニュアル classとobject 

さて、どうすすめよう? 適当なサンプルはないものか?
CLASS そのものの説明をするわけではないので、概念はマニュアルに譲るとして、 ま、ともかくマニュアルに書いてあるのを
実際に動かしてみよう。 
<HTML>
<HEAD>
<TITLE>PHP CLASS の実験1</TITLE>
</HEAD>

<BODY>

<P>
class の実験<BR>
</P>
<P>
<BR>
</P>

<?php
  $cart= new Cart;
  $cart->add_item("りんご",2);
  echo '籠に2個入れます。$cart->add_item("りんご",2);<BR>';
  echo $cart->items["りんご"],"<BR>\n";

  echo "表示出来ましたか? <BR>";
  echo "<BR>";
  echo '籠から1個出します。$cart->remove_item("りんご",1);<BR>';
    
  $cart->remove_item("りんご",1);
  echo $cart->items["りんご"],"<br>\n";

class Cart
{
    var $items;  // 買い物カゴの中のアイテム
   
    // $num 個の $artnr を買い物カゴに加えます

    function add_item ($artnr, $num)
    {
        $this->items[$artnr] += $num;
    }
   
    // $num 個の $artnr を買い物カゴから出します

    function remove_item ($artnr, $num)
    {
        if ($this->items[$artnr] > $num) {
            $this->items[$artnr] -= $num;
            return true;
        } else {
            return false;
        }   
    }
}

?>

</BODY>
</HTML>

実行結果
class の実験
籠に2個入れます。$cart->add_item("りんご",2);
2
表示出来ましたか? 

籠から1個出します。$cart->remove_item("りんご",1);
1


ちやんと動作している。
  $cart= new Cart; new演算子で実体を作る
   class = create class; みたいなもの
   たぶん $cart は new でメモリ中に実体を展開し
   その実体へのポインタみたいなものでしょう。

 だからその内容をアクセスするには
  $cart->add_item("りんご",2); とか
  $cart->items["りんご"];みたいに
 $cartが -> 指し示すところの add_item

  $testt = $cart;
  echo $testt->items["りんご"],"<br>\n";
  だからこれも成り立つ。


これもいろいろ使い方があるようで、変数の定義とか :: とか それはまた次の機会にしましょう。




























目次に戻る

2005/02/20start ********* Last Update 2006/11/12 15:07 JST

(C) Y.Kondou,2005,2006 All Rights, Reserved.
その他、お気づきの点がありましたら連絡先はこちらから