日期:2011-05-21  浏览次数:20418 次

发信人: OpenBall (爱我所爱~无怨无悔~), 信区: FreeDevelop
标 题: PHP类的继承中,调用基类函数的方法
发信站: 交大兵马俑BBS站 (Tue Aug 1 13:36:07 2000), 转信

PHP类的的方法这里略过。
但是,很多文章中有一个问题没有提到,就是在类的继承中,
如何调用基类的函数。这个问题经常见到,在面向对象的设
计程序设计中当然也很重要。

很多人想用类似于C语言的super()来调用父类函数,可是
行不通,因为PHP没有提供对这个函数的支持。

其实,PHP4提供了另一种方式来调用基类函数,即用基类名::函数名。
举例如下:
<?
class CBase
{
function SayHello()
{
echo "Hello from Base class!";
}
}
class Cinherit extends CBase
{
function SayHello()
{
CBase::SayHello(); //!!!!!!
echo "Hello from inherit class!";
}
}
$mSayHelloCls=new CAnother();
$mSayHelloCls->SayHello();
//输出:
//Hello from Base class!Hello from Inheriht class!
//可以看到,基类的函数被调用了!!
?>
好了,其实没有什么难的。只是很多人不知道罢了。
这是从PHP.net看到的,介绍给大家。