明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

類(lèi)的另類(lèi)用法--數(shù)據(jù)的封裝 

[摘要]類(lèi)的另類(lèi)用法--數(shù)據(jù)的封裝一般的情況下,如果使用classname::property是不能訪問(wèn)到類(lèi)的屬性的,但可以用classname::method()使用類(lèi)的方法。同樣的也不能用objectname->property訪問(wèn)到類(lèi)的方法里的變量。利用這一特點(diǎn),我們可以將一些數(shù)據(jù)保存于類(lèi)中,...
類(lèi)的另類(lèi)用法--數(shù)據(jù)的封裝
一般的情況下,如果使用classname::property是不能訪問(wèn)到類(lèi)的屬性的,但可以用classname::method()使用類(lèi)的方法。同樣的也不能用objectname->property訪問(wèn)到類(lèi)的方法里的變量。利用這一特點(diǎn),我們可以將一些數(shù)據(jù)保存于類(lèi)中,有點(diǎn)象c++的私有屬性。
<?
class data {
  function value($var) {
    static $d = array();
    if(func_num_args() > 1) {
      $d[$var] = func_get_arg(1);
    }else {
      return $d[$var];
    }
  }
}
//測(cè)試:
data::value("a",1);
data::value("b",2);
echo data::value("a");
echo data::value("b");
?>