面向对象在php中占有非常重要的位置,功能尤其强大,下面介绍一下,php中类的声明以及类的实例化。
1.类的声明
用class关键词来声明一个类
1 |
<?php |
2 |
//声明一个Person类 |
3 |
class Person { |
4 |
5 |
} |
6 |
?> |
上面声明了一个Person类,但是类里面的内容是空的,可以在类中添加一些属性和方法,添加属性用var关键词,添加方法用function关键词。
01 |
<?php |
02 |
//声明一个Person类 |
03 |
class Person { |
04 |
var $name ; //添加一个name属性 |
05 |
06 |
//添加一个say方法 |
07 |
public function say() { |
08 |
echo "This is my name!" ; |
09 |
} |
10 |
} |
11 |
?> |
这样一个完整的类就声明好了,在类的里面添加需要的属性和方法即可。
2.类的实例化
声明了类之后就可以用来实例化出对象,对象是实例化的类。实例化对象用关键词new
01 |
<?php |
02 |
//声明一个Person类 |
03 |
class Person { |
04 |
var $name ; //添加一个name属性 |
05 |
06 |
//添加一个say方法 |
07 |
public function say() { |
08 |
echo "This is my name!" ; |
09 |
} |
10 |
} |
11 |
12 |
$person1 = new Person(); //这里实例化一个对象person1 |
13 |
?> |
实例化的对象可通过->来给对象中的成员属性赋值,或访问成员属性和方法
01 |
<?php |
02 |
//声明一个Person类 |
03 |
class Person { |
04 |
var $name ; //添加一个name属性 |
05 |
06 |
//添加一个say方法 |
07 |
public function say() { |
08 |
echo "This is my name!" ; |
09 |
} |
10 |
} |
11 |
12 |
$person1 = new Person(); //这里实例化一个对象person1 |
13 |
$person1 ->name = "liming" ; //给name赋值 |
14 |
echo $person1 ->name; //输出name的值liming |
15 |
echo $person1 ->say(); //运行say()方法,输出This is my name! |
16 |
?> |
通过上面的讲解,类的声明只需用class关键词即可,声明后在类中添加需要的属性和方法。用new来实例化一个对象,通过->来给对象中的成员属性赋值和访问对象中的成员属性与方法。
---> 这个箭头是调用类中的函数
比如
class a
{
function b()
{
echo ’a’;
}
}
$a=new a;
$a->b();
输出:a
还有一个 >= 这样的箭头,定义数组用
比如
$array1=array(’a’=>5,’b’=>6);
while($arrayitem=each($array1))
{
extract($arrayitem);
echo(’
’.$key.’=’.$value);
}
输出:
a=5
b=6
:: 的意思:
不用实例化直接调!