php物件的方法或屬性是什麼
在php物件中,方法是指在類別結構中創建的函數,是實現類別中的一個行為,是類別的一部分;而屬性是指在類別結構中直接聲明的變量,物件中可以有多個屬性,每個變數都儲存物件不同的屬性資訊。
本教學操作環境:windows7系統、PHP7.1版、DELL G3電腦
首先來簡單了解下相關概念:
類別:class,是定義物件導向主體最外層結構,也是用來包裹主體資料和功能(函數),類別是一類別具有共性事務的代表,代表的是事務的共通點。
物件:object,是某一類別交易的具體代表,也是實際資料和功能操作的具體單元,也稱為實例(instance)。
實例化:new,從一個抽象的概念得到一個符合抽象概念的具體實例過程。
類別成員:member,指類別class結構中的所有內容,類別成員裡有三種;
方法:method,本質是在類別class結構中建立的函數,也稱為成員方法,或成員函數。
屬性:property,本質是在類別class結構中建立的變量,也稱為成員變數。
下面來重點聊聊 屬性和方法 。
成員屬性
在類別中直接宣告的變數稱為成員屬性(也可以稱為成員變數),可以在類別中宣告多個變量,即物件中可以有多個成員屬性,每個變數都儲存物件不同的屬性資訊。語法格式如下:
访问权限修饰符 属性名称 = 属性值;
成員屬性的類型可以是PHP 中的標量類型和複合類型,所以也可以是其他類別實例化的對象,但在類別中使用資源和空類型是沒有意義的。
前面我們有紹,宣告變數時不需要任何關鍵字修飾,但在類別中宣告成員屬性時,變數前面一定要使用一個關鍵字來修飾,例如public、private,static 等,但這些關鍵字修飾的變數都具有一定的意義。如果不需要有特定意義的修飾,可以使用「var」關鍵字,一旦成員屬性有其他的關鍵字修飾就需要去掉「var」。
常用存取權修飾符及其意義如下所示:
public:公共的,在類別的內部、子類別中或類別的外部都可以使用,不受限制;
protected:受保護的,在類別的內部和子類別中可以使用,但不能在類別的外部使用;
private:私有的,只能在類別的內部使用,在類別的外部或子類別中都無法使用。
注意:一個類,即一對大括號之間的全部內容都要在一段程式碼中,也就是一個之間,不能分割成多塊。
【範例】建立一個Students 類別並在類別中宣告一些成員屬性,程式碼如下所示:
<?php class Students{ var $name; public $age; private $sex; public static $school; } ?>
提示:權限修飾符可以和定義靜態變數的關鍵字static 混合在一起使用,如上面程式碼所示。
成員方法
在類別中定義的函數稱為成員方法。函數和成員方法唯一的差別就是,函數實作的是某個獨立的功能,而成員方法是實作類別中的一個行為,是類別的一部分。
可以在類別中宣告多個成員方法,成員方法的宣告和函數的宣告完全一樣,只不過在宣告成員方法時可以在function關鍵字的前面加一些存取權限修飾符來控制訪問權限,例如public、private、protected 等。
另外要注意的是,宣告的成員方法必須和類別是相關的,不能是一些沒有意義的操作。例如,在聲明學生類別時,如果聲明了「飛行」的成員方法,實例化出來的每個學生都可以飛了,這樣就是一個設計上的錯誤。
【範例】在上面範例中建立的 Students 類別中建立一些成員方法。
<?php class Students{ var $name; public $age; private $sex; public static $school; public function Write(){ } protected static function Read(){ } function Listen(){ } } ?>
成員方法前面的權限修飾符可以省略,省略後預設權限為 public。在類別中成員屬性和成員方法的聲明都是可選的,可以同時存在,也可以單獨存在,具體可以根據實際情況而定。
在PHP7 中,引入了類型聲明,我們可以為成員方法的形參和返回值聲明類型,格式如下所示:
[权限修饰符] function 方法名 (类型 参数1, 类型 参数2, ..., 类型 参数n) : 返回值类型 { ... ... }
PHP7 中支援聲明的參數類型包括整型、浮點型、字串型和布林類型。範例程式碼如下所示:
<?php class Students{ var $name; public $age; private $sex; public static $school; public function Write(string $a, int $b):bool{ } protected static function Read(string $str):int{ } function Listen(int $num):bool{ } } ?>
實例化物件並存取物件中的成員
物件中包含成員屬性和成員方法,存取物件中的成員和存取數組中的元素類似,只能透過物件的引用來存取物件中的成員。但也要使用一個特殊的運算符號->來完成物件成員的訪問,存取物件中成員的語法格式如下所示:
变量名 = new 类名(参数); //实例化一个类 变量名 -> 成员属性 = 值; //为成员属性赋值 变量名 -> 成员属性; //直接获取成员属性的值 变量名 -> 成员方法(); //访问对象中的成员方法
下面通过一个示例来演示一下:
<?php header("Content-type:text/html;charset=utf-8"); class Website{ public $name, $url, $title; public function demo(){ echo '成员方法 demo()'; } } $student = new Website(); $student -> name = 'php中文网'; $student -> url = 'https://www.php.cn/'; $student -> title = '实例化对象'; echo $student -> name.'<br>'; echo $student -> url.'<br>'; echo $student -> title.'<br>'; $student -> demo(); ?>
推荐学习:《PHP视频教程》
以上是php物件的方法或屬性是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP 8.4 帶來了多項新功能、安全性改進和效能改進,同時棄用和刪除了大量功能。 本指南介紹如何在 Ubuntu、Debian 或其衍生版本上安裝 PHP 8.4 或升級到 PHP 8.4

Visual Studio Code,也稱為 VS Code,是一個免費的原始碼編輯器 - 或整合開發環境 (IDE) - 可用於所有主要作業系統。 VS Code 擁有大量針對多種程式語言的擴展,可以輕鬆編寫

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

字符串是由字符組成的序列,包括字母、數字和符號。本教程將學習如何使用不同的方法在PHP中計算給定字符串中元音的數量。英語中的元音是a、e、i、o、u,它們可以是大寫或小寫。 什麼是元音? 元音是代表特定語音的字母字符。英語中共有五個元音,包括大寫和小寫: a, e, i, o, u 示例 1 輸入:字符串 = "Tutorialspoint" 輸出:6 解釋 字符串 "Tutorialspoint" 中的元音是 u、o、i、a、o、i。總共有 6 個元

靜態綁定(static::)在PHP中實現晚期靜態綁定(LSB),允許在靜態上下文中引用調用類而非定義類。 1)解析過程在運行時進行,2)在繼承關係中向上查找調用類,3)可能帶來性能開銷。

本教程演示瞭如何使用PHP有效地處理XML文檔。 XML(可擴展的標記語言)是一種用於人類可讀性和機器解析的多功能文本標記語言。它通常用於數據存儲

PHP的魔法方法有哪些? PHP的魔法方法包括:1.\_\_construct,用於初始化對象;2.\_\_destruct,用於清理資源;3.\_\_call,處理不存在的方法調用;4.\_\_get,實現動態屬性訪問;5.\_\_set,實現動態屬性設置。這些方法在特定情況下自動調用,提升代碼的靈活性和效率。

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。
