1. 程式人生 > >自動加載類的知識點整理

自動加載類的知識點整理

簡單 副本 而是 ren 是個 其中 自動調用 php文件 代碼

//__tostring()方法

class Ren      //造一個人類,裏面有成員變量$name

{

  public $name;

}

$r = new Ren();

echo $r;

//寫出echo $r;命令是想輸出剛造的對象$r,因為$r是人類裏面的一個對象,因為直接輸出是輸出一個對象,這個對象沒法直接輸出來,因為它是一個對象類型不是個字符串類型所以該程序會報錯。

//如果想在輸出這個對象的時候不報錯,而是顯示一下這個類裏面的信息。那就得在這個類裏面加上一個方法。

class Ren

{

  public $name;

  public function __tostring()    //加了__tostring()方法後,可以“輸出該類是人類,name代表姓名”,這句話。這樣就可以說明這個__tostring()方法是用來

                     //我們在輸出這個對象的時候,能夠有輸出內容不報錯。而且這個輸出內容裏面,我們可以簡單地描述一下這個類這個對象是幹

  {                  //什麽用的,這個對象裏面包含哪些成員,分別是做什麽用的

    return "該類是人類,name代表姓名";

  }

}

$r = new Ren();

echo $r;

//克隆對象

class Ren

{

  public $name ="張三";

}

$r= new Ren;

$c= clone $r;      //又造了一個對象$c,這個$c是由前面已經造過的$r克隆來的,使用關鍵字clone.所以克隆來的$c與前面$r具有相同的東西。克隆來的$c和$r是

echo $c->name;     //一模一樣的。相當於我們把這個對象復制了兩份。

//我在克隆出這個對象之後,我想修改一下這個對象裏面的內容。也就是修改裏面的成員變量name

//我們可以在克隆完之後,用對象調用它裏面的成員變量來更改name的值。

$r= new Ren;

$c= clone $r;

$c->name = "李四"; //

//還可以在克隆的同時把它改掉。此時需要在這個類裏面加上一個方法。

class Ren

{

  public $name ="張三";

  public function __clone()      //這個方法叫做克隆的方法。 在執行$c= clone $r;的時候會自動調用這個方法來執行,那麽就可以在這個方法裏面

  {                  //加上一些東西了,想把它名字給變了就在這個方法裏面操作name就行       

    $this->name = "李四";    //在這個花括號裏面,$this代表的是副本對象,也就是$this代表$c 原來的那個對象$r沒有變化,也就是$r的name值還是張三

  }                //對原本沒有進行改動,改動的是副本的name值。

}

$r= new Ren;

$c= clone $r;     

echo $c->name;

//加載類

//第一種方法:用include 先建立一個php文件,名字改為 類名.class.php的形式。然後再將它保存在想要訪問它的同一文件夾內。將這個文件裏面的代碼全部刪除只寫以

<?php 開頭的內容。然後再在想要訪問這個類的文件裏面使用include();函數來進行加載。 其中括號裏面寫路徑地址,也就是寫類文件的地址。因為這兩個文件是在同一個文件夾內的所以可以根據相對路徑來找就可以了。相對路徑:用./ 其後面再寫這個類文件的文件名。

include("./Ren.class.php");

$r= new Ren();      //命令為造一個對象$r

echo $r->name;      //輸出一下這個剛造的對象調用的name成員變量。

自動加載類的知識點整理