搜尋
首頁php教程php手册PHP面向对象之旅:类的属性

PHP面向对象之旅:类的属性

Jun 13, 2016 am 10:54 AM
phpphp5可以定義物件屬性類別類型設定面向

在PHP5中,在属性定义可以不设置初值,或者赋予以下红色类型的初值。

PHP中简单类型有8种,分别是:

•数值类型

1.boolean 布尔类型

2.integer 整型

3.float 浮点型,也称为 double 双精度浮点型

4.string 字符串

•复合类型

1.array 数组

2.object 对象

•特殊类型

1.resource 资源

2.NULL

 

01  

02     class A{         

03     } 

04       

05     class Person{ 

06         private $name; //定义属性未赋值。 

07         private $name1 = NULL; //定义属性空值 ,与未赋值一样。 

08         private $married = true;  //用布尔型为属性赋值。   

09         private $grade = 0; //用整形数值为属性赋值 

10         private $eyesight = 0.1; //用浮点型数字为属性赋值 

11         private $nationality = "China"; //用字符串为属性赋值 

12         private $arr = array("foo" => "bar", 12 => true); // 用数组为属性赋值 

13         //private $a = new A(); //PHP5不允许,创建对象类型赋值给属性 

14         //private $res = opendir("abc"); // PHP5不允许使用资源类型  

15         //private $g = $this->grade; //不允许用前面定义的属性为新属性赋值。 

16           

17     } 

18     $a = new Person(); 

19 ?> 

在上面例子中,第13行,尝试创建对象并将值赋予属性$a 会报错。

第14行,建立资源并复制给$res会出现错误。

第15行,使用上面定义的属性为新属性赋值也会产生错误。

在Java中,可以作13行和15行这样的操作。 PHP5中定义属性的默认值,被限制到最简单的方式。其它的操作,交给构造方法操作,后面内容中将讲解构造方法。

变量与引用变量

普通变量间的传值方法,就是值的赋值。比如数组。

 

1  

2     $arr = array("foo" => "bar", 12 => true);  

3     $a = $arr; 

4       

5     $arr[foo] = "new"; 

6     print_r($arr); 

7     echo '
'; 

8     print_r($a); 

9 ?> 

程序输出:

view sourceprint?

1 Array ( [foo] => new [12] => 1 )  

2 Array ( [foo] => bar [12] => 1 ) 

而指向对象的变量,是一个引用变量。在这个变量里面存储的是所指向对象的内存地址。引用变量传值时,传递的是这个对象的指向。而非复制这个对象。

属性的扩充

$this 指当前对象。

$this-> 调用当前对象的属性或者方法。

在类中使用$this-> 调用一个未定义的属性时,PHP5会自动创建一个属性供使用。

这个被创建的属性,默认的方法权限是public。

 

01  

02     class A { 

03         public $name = "Gonn"; 

04           

05         public function __construct() { 

06             $this -> age = "24"; 

07         } 

08     } 

09       

10     $p = new A(); 

11       

12     echo $p->name; 

13     echo '
'; 

14     echo $p->age; 

15 ?> 

程序输出:

 

1 Gonn 

2 24 

属性 age 被创建了。

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SublimeText3 Mac版

SublimeText3 Mac版

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

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能