用了php一段時間 但是 ->是啥意思我其實還是沒有很清楚

查了一下 做個記錄

類是一個複雜數據類型,這個類型的數據主要有屬性、方法兩種東西。

屬性其實是一些變量,可以存放數據,存放的數據可以是整數、字符串,也可以是數組,甚至是類。

方法實際上是一些函數,用來完成某些功能。

引用一個類的屬性和方法就使用->符號。




下面是一個例子小程序:
<?php
//定義類Cart
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;
        } elseif ($this->items[$artnr] == $num) {
            unset($this->items[$artnr]);
            return true;
        } else {
            return false;
        }
    }
}

//示例繼承定義類Named_Cart
class Named_Cart extends Cart {
    var $owner;

    function set_owner ($name) {
        $this->owner = $name;
    }
}


//使用類的代碼
$ncart = new Named_Cart;    // 新建一個有名字的購物車
$ncart->set_owner("kris");  // 給該購物車命名
print $ncart->owner;        // 輸出該購物車主人的名字
$ncart->add_item("10", 1);  // 添加了 1 件 10 號商品(從購物車類中繼承來的功能)
?> 

->是調用的意思
類 -> 類的成員變量或者成員函數 


->這個箭頭是調用類中的函數
比如
class a
{
function b()
{
echo 'a';
}
}
$a=new a;
$a->b();
輸出:a
還有一個=>這樣的箭頭,定義數組用
比如
$array1=array('a'=>5,'b'=>6);
while($arrayitem=each($array1))
{
extract($arrayitem);
echo('<br />'.$key.'='.$value);
}

輸出:
a=5
b=6

類 -> 類的成員變量或者成員函數
創作者介紹

做自己 好自在

a22710518 發表在 痞客邦 PIXNET 留言(1) 人氣()


留言列表 (1)

發表留言
  • 訪客
  • 不好意思,我想問個問題
    function add_item($artnr, $num) {
    $this->items[$artnr] += $num;
    }

    請問$artnr代表的是商品編號嗎?
    而$this->items[$artnr] += $num; 這段該如何解釋呢?

    謝謝您
  • $artnr是商品編號沒錯 $this->items[$artnr] += $num;是將編號$artnr的商品加上 $num個

    a22710518 於 2012/08/01 17:47 回覆

找更多相關文章與討論