# PHP怎么寫方法
在PHP中,方法(Method)是面向對象編程的核心概念之一,指定義在類中的函數。本文將詳細介紹PHP方法的定義、調用、參數傳遞以及相關特性。
## 一、基本方法定義
```php
class User {
// 無參方法
public function sayHello() {
echo "Hello World!";
}
// 帶參方法
public function greet($name) {
echo "Hello, $name!";
}
}
function
關鍵字定義方法getUserInfo
)$user = new User();
$user->sayHello(); // 輸出: Hello World!
$user->greet("Alice"); // 輸出: Hello, Alice!
PHP方法支持多種參數特性:
public function add(int $a, int $b): int {
return $a + $b;
}
public function log($message, $level = 'INFO') {
echo "[$level] $message";
}
public function sum(...$numbers) {
return array_sum($numbers);
}
修飾符 | 說明 |
---|---|
public | 任何地方可訪問(默認) |
protected | 僅類自身和子類可訪問 |
private | 僅類自身可訪問 |
class Example {
public function publicMethod() {}
protected function protectedMethod() {}
private function privateMethod() {}
}
使用static
關鍵字定義,通過類名直接調用:
class MathUtils {
public static function square($n) {
return $n * $n;
}
}
echo MathUtils::square(5); // 輸出: 25
PHP提供特殊命名的方法,在特定場景自動調用:
class Magic {
// 構造函數
public function __construct() {
echo "對象已創建";
}
// 析構函數
public function __destruct() {
echo "對象已銷毀";
}
// 方法重載
public function __call($name, $arguments) {
echo "調用不存在的方法: $name";
}
}
通過返回$this
實現鏈式操作:
class QueryBuilder {
private $query;
public function select($columns) {
$this->query = "SELECT $columns";
return $this;
}
public function where($condition) {
$this->query .= " WHERE $condition";
return $this;
}
}
$query = (new QueryBuilder())
->select('*')
->where('id = 1');
通過掌握這些方法編寫技巧,可以構建出更清晰、更易維護的PHP面向對象代碼。 “`
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。