我们一起学php(面向对象一、二)



2017-02-01 12:20:57

面向对象


首先我们说一下 类的概念!


类的基本结构 class a{

    var $b; //var 为php4中的写法,后面会有新的写法,请关注;

    function c(){


    }

}

类由成员属性(变量)和成员方法(函数) 组成!


$x = new a();注意可以写出这样,也可以写成 $ = new a;但是建议写成带括号的,因为,后面跟构造函数会有衔接;


$x 就是一个对象;一个类可以实例化成为无数个对象;


<?php 

class a{

var $b;

function c(){

echo 1;

 

}

}

$b = new a();

$b->c();


结果为1;


类、对象、属性、方法;


类、对象 是实例化的关系!


属性可以在声明的时候赋值,这个时候,被赋的值,只能是一个常量,不可以是表达式和变量!


可以var $a = 5;


不可以 var $a = 3+2; 和 $a = $x;


属性的值,一般在构造函数中被赋值!!!下面讲!!!


方法需要注意的就是 $this的使用,$this 表示这个对象;谁调用其中的属性或者方法,$this 就是指得哪个对象;


<?php 

header("content-type:text/html;charset=utf-8");

class a{

var $name = 'xiaoming';

function say(){

echo $this->name.'喜欢唱歌!';

}

 

 

}

$b = new a();

$b->say();



关于方法,还有一个需要注意的就是 构造方法,在php4中,构造方法的定义是使用


  1. 和类名同名的方法!!


  2. 在类被实例化的时候,就执行构造方法中的内容!!



例子如下:



<?php 

header("content-type:text/html;charset=utf-8");

class a{

var $name = 'xiaoming';

function say(){

echo $this->name.'喜欢唱歌!';

}

function a(){

echo '我是一个构造函数!
';  //注意,在后面的章节,会有新的更改,此种构造方法的写法是php4的写法,

                

            为了便于理解,先这么定义!后面会用__construct(){}来定义后遭函数

}

 

 

}

$b = new a();

$b->say();



以上写法是,构造函数中,没有参数的情况!


在实际的类的使用的过程中,构造函数是非常常用的,也是伴随着使用参数,其中,参数的主要作用就是为属性赋初始值,请看下面的例子:


<?php 

header("content-type:text/html;charset=utf-8");

class a{

var $b;

var $c;

function a($d,$e){

$this->b = $d;

$this->c = $e;

}

}

$x = new a(1,3);

print_r($x);


结果为  a Object ( [b] => 1 [c] => 3 )



以上为构造函数的使用!


因为构造函数的名字和类名是一样的,所以,在实例化类为对象的时候,在类的后面有一个括号,括号里面写参数,也就是给属性赋值,就更加的容易理解了!














上一篇 我们一起学php(session)

下一篇 我们一起学php(面向对象三)

评论专区

名称

网址

评论




相关文章


我们一起学php(session)     2017-01-30 20:15:20

我么一起学php(cookie)     2017-01-29 14:56:44

我么一起学php(函数二)     2017-01-29 14:53:46

新年寄语     2017-01-28 10:57:45

我们一起学php(函数)     2017-01-21 21:44:58

我看到 ‘山寨币市场很混乱’     2017-01-21 14:22:38

我们一起学php(循环)     2017-01-21 11:40:44

我们一起学php(选择结构)     2017-01-19 21:46:00

我们一起学php(预定义变量和表单上传)     2017-01-19 19:57:17

虚拟世界网又增新模块!!     2017-01-20 17:06:26

回到顶部