搜索
首页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尊渡假赌尊渡假赌尊渡假赌

热工具

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器