PHP中的public關(guān)鍵字用于定義公共的類屬性或方法,可以被類內(nèi)部和外部的任何地方訪問。在面向?qū)ο缶幊讨?,public是最常用的訪問控制修飾符之一,它可以使類的行為更加清晰和具有可操作性。下面通過一些例子來展示public關(guān)鍵字在實(shí)際中的應(yīng)用。
首先,我們來看一個(gè)簡單的類的定義:
class Person { public $name; public function sayHello() { echo "Hello, my name is ".$this->name; } }
在上面的例子中,我們定義了一個(gè)Person類,它有一個(gè)公共的name屬性和一個(gè)公共的sayHello方法。這個(gè)類的使用方式如下:
$person = new Person(); $person->name = "Tom"; $person->sayHello();
上面的代碼中,我們實(shí)例化了一個(gè)Person對(duì)象,并將它的name屬性設(shè)置為"Tom"。然后我們調(diào)用了sayHello方法,這個(gè)方法會(huì)輸出"Hello, my name is Tom"。
再來看一個(gè)更復(fù)雜的例子:
class Rectangle { public $width; public $height; public function __construct($width, $height) { $this->width = $width; $this->height = $height; } public function getArea() { return $this->width * $this->height; } public function setWidth($width) { $this->width = $width; } public function setHeight($height) { $this->height = $height; } } $rectangle = new Rectangle(10, 20); echo $rectangle->getArea(); // 輸出200 $rectangle->setWidth(15); echo $rectangle->getArea(); // 輸出300
上述代碼定義了一個(gè)Rectangle類,它有兩個(gè)公共屬性width和height,以及4個(gè)公共方法。在構(gòu)造函數(shù)中,我們初始化了這兩個(gè)屬性。通過getArea方法,我們可以計(jì)算出這個(gè)矩形的面積。而setWidth和setHeight方法可以用來設(shè)置矩形的寬和高。在最后一段代碼中,我們創(chuàng)建了一個(gè)Rectangle對(duì)象,計(jì)算出了它的面積,并且調(diào)用setWidth方法修改它的寬度,再次計(jì)算出了面積并輸出。
總的來說,在PHP中使用public關(guān)鍵字定義類的屬性和方法,可以使代碼更加清晰易懂,提高代碼的可重用性和可維護(hù)性。